2017-04-17 3:52 GMT+02:00 JumpStart <[email protected]>:
> Romain, you were right about the problem being the compiler version. 4.5.2 > compiled with Java 8 but 4.6.0.2 doesn’t. > > Mark, I’m just stepping up one major release at a time because my > experience is that every major release has given me a small problem and > it’s easier to debug one small problem in isolation than many. Don’t forget > that it’s not just the code of OpenEJB that is changing, it’s often the > dependent JARs that are changing too. When debugging it’s preferable to > have as few variables changing as possible. > > Quite note on that (to have done upgrades a tons of times ;)): it is often as easy to jump N versions (N > 1) than N x 1 version while you stay on the same major cause with small problems you also get a tons of fixes. So N x P problems often << 1 x P' problems. > Cheers, > > Geoff > > > On 16 Apr 2017, at 3:41 PM, Mark Struberg <[email protected]> > wrote: > > > > Just out of curiosity: Why not using 4.7.4. > > Is 1:1 compatible with 4.5 and 4.6 > > > > LieGrue, > > strub > > > > > >> Am 12.04.2017 um 09:48 schrieb Romain Manni-Bucau < > [email protected]>: > >> > >> Hi Geoff, > >> > >> are you sure you didn't recompile your application with java 8? 4.6 > doesn't > >> support it if I recall correctly. The difference is the > >> xbean-finder-shaded/xbean-asm-shaded version. > >> > >> > >> Romain Manni-Bucau > >> @rmannibucau <https://twitter.com/rmannibucau> | Blog > >> <https://blog-rmannibucau.rhcloud.com> | Old Blog > >> <http://rmannibucau.wordpress.com> | Github <https://github.com/ > rmannibucau> | > >> LinkedIn <https://www.linkedin.com/in/rmannibucau> | JavaEE Factory > >> <https://javaeefactory-rmannibucau.rhcloud.com> > >> > >> 2017-04-12 9:26 GMT+02:00 JumpStart <geoff.callender.jumpstart@ > gmail.com>: > >> > >>> What changed in OpenEJB Standalone from 4.5.2 to 4.6.0.2 that would > cause > >>> the stack trace below? > >>> > >>> I’m running collapsed EAR format, in an old version of Jetty, fired up > in > >>> a Java program in Eclipse. > >>> > >>> Here’s what it logged with 4.6.0.2 … > >>> > >>> SLF4J: Class path contains multiple SLF4J bindings. > >>> SLF4J: Found binding in [jar:file:/git/xpro/xpro/web/ > >>> src/test/lib-test/slf4j-log4j12-1.7.21.jar!/org/slf4j/ > >>> impl/StaticLoggerBinder.class] > >>> SLF4J: Found binding in [jar:file:/devel/apache- > openejb-4.6.0.2/lib/slf4j- > >>> jdk14-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] > >>> SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an > >>> explanation. > >>> SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > >>> INFO [main] (Slf4jLog.java:67) - Logging to org.slf4j.impl. > >>> Log4jLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog > >>> INFO [main] (Slf4jLog.java:67) - jetty-6.1.24 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: ************************************************************ > >>> ******************** > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: OpenEJB http://openejb.apache.org/ > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Startup: Tue Apr 11 09:32:17 UTC 2017 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Copyright 1999-2013 (C) Apache OpenEJB Project, All Rights > Reserved. > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Version: 4.6.0.2 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Build date: 20140506 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Build time: 03:09 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: ************************************************************ > >>> ******************** > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: openejb.home = /devel/apache-openejb-4.6.0.2 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: openejb.base = /devel/apache-openejb-4.6.0.2 > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.cdi.CdiBuilder > initializeOWB > >>> INFO: Created new singletonService org.apache.openejb.cdi. > >>> ThreadSingletonServiceImpl@7a8c8dcf > >>> Apr 11, 2017 9:32:17 AM org.apache.openejb.cdi.CdiBuilder > initializeOWB > >>> INFO: Succeeded in installing singleton service > >>> Apr 11, 2017 9:32:20 AM org.apache.openejb.config.ConfigurationFactory > >>> init > >>> INFO: openejb configuration file is '/git/xpro/xpro/business/src/ > >>> test/conf/openejb.xml' > >>> Apr 11, 2017 9:32:21 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=OpenEJBSecurityService, > >>> type=SecurityService, provider-id=OpenEJBSecurityService) > >>> Apr 11, 2017 9:32:21 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=Default Transaction Manager, > >>> type=TransactionManager, provider-id=Default Transaction Manager) > >>> Apr 11, 2017 9:32:21 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=XproDS, type=Resource, provider-id=Default > >>> JDBC Database) > >>> Apr 11, 2017 9:32:21 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=XproDSUnmanaged, type=Resource, > >>> provider-id=Default JDBC Database) > >>> Apr 11, 2017 9:32:28 AM org.apache.openejb.config.ConfigurationFactory > >>> configureApplication > >>> WARNING: Jar not loaded. /git/xpro/xpro/collapsed/xpro.war. Unable to > >>> create annotation scanner for web module xpro: null > >>> org.apache.openejb.OpenEJBException: Unable to create annotation > scanner > >>> for web module xpro: null > >>> at org.apache.openejb.config.DeploymentLoader.addWebModule( > >>> DeploymentLoader.java:838) > >>> at org.apache.openejb.config.DeploymentLoader.load( > >>> DeploymentLoader.java:219) > >>> at org.apache.openejb.config.ConfigurationFactory. > >>> configureApplication(ConfigurationFactory.java:767) > >>> at org.apache.openejb.config.ConfigurationFactory. > >>> getOpenEjbConfiguration(ConfigurationFactory.java:495) > >>> at org.apache.openejb.config.ConfigurationFactory. > >>> getOpenEjbConfiguration(ConfigurationFactory.java:575) > >>> at org.apache.openejb.assembler.classic.Assembler. > >>> getOpenEjbConfiguration(Assembler.java:429) > >>> at org.apache.openejb.assembler.classic.Assembler.build( > >>> Assembler.java:408) > >>> at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:148) > >>> at org.apache.openejb.OpenEJB$Instance.<init>(OpenEJB.java:65) > >>> at org.apache.openejb.OpenEJB.init(OpenEJB.java:296) > >>> at org.apache.openejb.OpenEJB.init(OpenEJB.java:276) > >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >>> at sun.reflect.NativeMethodAccessorImpl.invoke( > >>> NativeMethodAccessorImpl.java:62) > >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke( > >>> DelegatingMethodAccessorImpl.java:43) > >>> at java.lang.reflect.Method.invoke(Method.java:497) > >>> at org.apache.openejb.loader.OpenEJBInstance.init( > >>> OpenEJBInstance.java:36) > >>> at org.apache.openejb.core.LocalInitialContextFactory.init( > >>> LocalInitialContextFactory.java:96) > >>> at org.apache.openejb.core.LocalInitialContextFactory.init( > >>> LocalInitialContextFactory.java:60) > >>> at org.apache.openejb.core.LocalInitialContextFactory. > >>> getInitialContext(LocalInitialContextFactory.java:44) > >>> at javax.naming.spi.NamingManager.getInitialContext( > >>> NamingManager.java:684) > >>> at javax.naming.InitialContext.getDefaultInitCtx( > >>> InitialContext.java:313) > >>> at javax.naming.InitialContext.init(InitialContext.java:244) > >>> at javax.naming.InitialContext.<init>(InitialContext.java:192) > >>> at org.mortbay.jetty.plus.naming.NamingEntry.save(NamingEntry. > >>> java:191) > >>> at org.mortbay.jetty.plus.naming.NamingEntry.<init>( > >>> NamingEntry.java:58) > >>> at org.mortbay.jetty.plus.naming.EnvEntry.<init>(EnvEntry.java: > 46) > >>> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > >>> Method) > >>> at sun.reflect.NativeConstructorAccessorImpl.newInstance( > >>> NativeConstructorAccessorImpl.java:62) > >>> at sun.reflect.DelegatingConstructorAccessorImpl.newInstance( > >>> DelegatingConstructorAccessorImpl.java:45) > >>> at java.lang.reflect.Constructor.newInstance(Constructor.java: > 422) > >>> at org.mortbay.xml.XmlConfiguration.newObj( > >>> XmlConfiguration.java:608) > >>> at org.mortbay.xml.XmlConfiguration.configure( > >>> XmlConfiguration.java:256) > >>> at org.mortbay.xml.XmlConfiguration.configure( > >>> XmlConfiguration.java:214) > >>> at org.mortbay.jetty.deployer.ContextDeployer.createContext( > >>> ContextDeployer.java:369) > >>> at org.mortbay.jetty.deployer.ContextDeployer.deploy( > >>> ContextDeployer.java:263) > >>> at org.mortbay.jetty.deployer.ContextDeployer.access$000( > >>> ContextDeployer.java:67) > >>> at org.mortbay.jetty.deployer.ContextDeployer$ > >>> ScannerListener.fileAdded(ContextDeployer.java:89) > >>> at org.mortbay.util.Scanner.reportAddition(Scanner.java:410) > >>> at org.mortbay.util.Scanner.reportDifferences(Scanner.java:324) > >>> at org.mortbay.util.Scanner.scan(Scanner.java:280) > >>> at org.mortbay.jetty.deployer.ContextDeployer.doStart( > >>> ContextDeployer.java:327) > >>> at org.mortbay.component.AbstractLifeCycle.start( > >>> AbstractLifeCycle.java:50) > >>> at org.mortbay.jetty.Server.doStart(Server.java:201) > >>> at org.mortbay.component.AbstractLifeCycle.start( > >>> AbstractLifeCycle.java:50) > >>> at com.goxpro.xpro.web.RunJetty.main(RunJetty.java:84) > >>> Caused by: java.lang.IllegalArgumentException > >>> at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source) > >>> at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source) > >>> at org.apache.xbean.asm4.ClassReader.<init>(Unknown Source) > >>> at org.apache.xbean.finder.AnnotationFinder.readClassDef( > >>> AnnotationFinder.java:1120) > >>> at org.apache.xbean.finder.AnnotationFinder.<init>( > >>> AnnotationFinder.java:139) > >>> at org.apache.xbean.finder.AnnotationFinder.<init>( > >>> AnnotationFinder.java:152) > >>> at org.apache.xbean.finder.AsynchronousInheritanceAnnotat > >>> ionFinder.<init>(AsynchronousInheritanceAnnotationFinder.java:43) > >>> at org.apache.openejb.config.FinderFactory.newFinder( > >>> FinderFactory.java:114) > >>> at org.apache.openejb.config.FinderFactory.create( > >>> FinderFactory.java:68) > >>> at org.apache.openejb.config.FinderFactory.createFinder( > >>> FinderFactory.java:57) > >>> at org.apache.openejb.config.DeploymentLoader.addWebModule( > >>> DeploymentLoader.java:830) > >>> ... 44 more > >>> > >>> Apr 11, 2017 9:32:28 AM org.apache.openejb.util.OptionsLog info > >>> INFO: Using 'openejb.system.apps=true' > >>> Apr 11, 2017 9:32:28 AM org.apache.openejb.config.ConfigurationFactory > >>> configureApplication > >>> INFO: Configuring enterprise application: openejb > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Using openejb.deploymentId.format '{ejbName}' > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/User: EjbDeployment(deployment-id= > >>> openejb/User) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/Deployer: EjbDeployment(deployment-id= > >>> openejb/Deployer) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/ConfigurationInfo: > >>> EjbDeployment(deployment-id=openejb/ConfigurationInfo) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb MEJB: EjbDeployment(deployment-id=MEJB) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=Default Stateless Container, > type=Container, > >>> provider-id=Default Stateless Container) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.AutoConfig > >>> createContainer > >>> INFO: Auto-creating a container for bean openejb/User: > >>> Container(type=STATELESS, id=Default Stateless Container) > >>> Apr 11, 2017 9:32:30 AM org.apache.openejb.config.AppInfoBuilder build > >>> INFO: Enterprise application "openejb" loaded. > >>> ... > >>> > >>> > >>> And here’s what it logged with 4.5.2 … > >>> > >>> > >>> INFO [main] (Slf4jLog.java:67) - Logging to org.slf4j.impl. > >>> Log4jLoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog > >>> INFO [main] (Slf4jLog.java:67) - jetty-6.1.24 > >>> Apr 12, 2017 7:11:24 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: ************************************************************ > >>> ******************** > >>> Apr 12, 2017 7:11:24 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: OpenEJB http://openejb.apache.org/ > >>> Apr 12, 2017 7:11:24 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Startup: Wed Apr 12 07:11:24 UTC 2017 > >>> Apr 12, 2017 7:11:24 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Copyright 1999-2012 (C) Apache OpenEJB Project, All Rights > Reserved. > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Version: 4.5.2 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Build date: 20130320 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: Build time: 03:56 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: ************************************************************ > >>> ******************** > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: openejb.home = /devel/apache-openejb-4.5.2 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.OpenEJB$Instance <init> > >>> INFO: openejb.base = /devel/apache-openejb-4.5.2 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.cdi.CdiBuilder > initializeOWB > >>> INFO: Created new singletonService org.apache.openejb.cdi. > >>> ThreadSingletonServiceImpl@74e52ef6 > >>> Apr 12, 2017 7:11:25 AM org.apache.openejb.cdi.CdiBuilder > initializeOWB > >>> INFO: Succeeded in installing singleton service > >>> Apr 12, 2017 7:11:27 AM org.apache.openejb.config.ConfigurationFactory > >>> init > >>> INFO: openejb configuration file is '/git/xpro/xpro/business/src/ > >>> test/conf/openejb.xml' > >>> Apr 12, 2017 7:11:27 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=OpenEJBSecurityService, > >>> type=SecurityService, provider-id=OpenEJBSecurityService) > >>> Apr 12, 2017 7:11:28 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=Default Transaction Manager, > >>> type=TransactionManager, provider-id=Default Transaction Manager) > >>> Apr 12, 2017 7:11:28 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=XproDS, type=Resource, provider-id=Default > >>> JDBC Database) > >>> Apr 12, 2017 7:11:28 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=XproDSUnmanaged, type=Resource, > >>> provider-id=Default JDBC Database) > >>> Apr 12, 2017 7:11:39 AM org.apache.openejb.config.ConfigurationFactory > >>> configureApplication > >>> INFO: Configuring enterprise application: > /git/xpro/xpro/collapsed/xpro. > >>> war > >>> Apr 12, 2017 7:11:46 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb SessionEventService: > EjbDeployment(deployment-id= > >>> SessionEventService) > >>> Apr 12, 2017 7:11:46 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb PlannerEventService: > EjbDeployment(deployment-id= > >>> PlannerEventService) > >>> ... lots of services ... > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb PlannerFinderService: > EjbDeployment(deployment-id= > >>> PlannerFinderService) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=Default Singleton Container, > type=Container, > >>> provider-id=Default Singleton Container) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.AutoConfig > >>> createContainer > >>> INFO: Auto-creating a container for bean SessionEventService: > >>> Container(type=SINGLETON, id=Default Singleton Container) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.ConfigurationFactory > >>> configureService > >>> INFO: Configuring Service(id=Default Stateless Container, > type=Container, > >>> provider-id=Default Stateless Container) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.AutoConfig > >>> createContainer > >>> INFO: Auto-creating a container for bean TesterService: > >>> Container(type=STATELESS, id=Default Stateless Container) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.AutoConfig deploy > >>> INFO: Configuring PersistenceUnit(name=xpro, > provider=org.hibernate.ejb. > >>> HibernatePersistence) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config. > ReportValidationResults > >>> logResults > >>> WARNING: WARN ... xpro: The application [xpro] uses @Inject but CDI is > not > >>> enabled. Maybe youd need to add a beans.xml file. > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config. > ReportValidationResults > >>> logResults > >>> WARNING: 1 warning for EjbModule(path=xpro) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.AppInfoBuilder build > >>> INFO: Enterprise application "/git/xpro/xpro/collapsed/xpro.war" > loaded. > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.util.OptionsLog info > >>> INFO: Using 'openejb.system.apps=true' > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.ConfigurationFactory > >>> configureApplication > >>> INFO: Configuring enterprise application: openejb > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Using openejb.deploymentId.format '{ejbName}' > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/User: EjbDeployment(deployment-id= > >>> openejb/User) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/Deployer: EjbDeployment(deployment-id= > >>> openejb/Deployer) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb openejb/ConfigurationInfo: > >>> EjbDeployment(deployment-id=openejb/ConfigurationInfo) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.InitEjbDeployments > >>> deploy > >>> INFO: Auto-deploying ejb MEJB: EjbDeployment(deployment-id=MEJB) > >>> Apr 12, 2017 7:11:47 AM org.apache.openejb.config.AppInfoBuilder build > >>> INFO: Enterprise application "openejb" loaded. > >>> ... > >>> > >>> > >>> Thanks in advance, > >>> > >>> Geoff > >>> > >>> > > > >
