I’m back to this upgrade from 4.5.2 to 4.6.0.2 and I’m seeing a new issue. All 
my ServletContextListeners are being invoked twice, in parallel.

I haven’t changed anything to do with them. They’re still specified once each 
in web.xml.

Any idea what might be different between those two releases?

Cheers,

Geoff

> On 17 Apr 2017, at 9:52 AM, JumpStart <[email protected]> 
> wrote:
> 
> 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.
> 
> 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 <[email protected]>:
>>> 
>>>> 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
>>>> 
>>>> 
>> 
> 

Reply via email to