-
1. Re: JBoss 7 - packed / unpacked EAR deployment differences
wdfink Dec 21, 2011 3:45 PM (in response to sekt)I would suppose that the exploded (unpacked) deployment is correct and the deployment packed by maven include some jar's that are provided by JBoss.
Could you post what kind of error do you have and how the structure of both ear's is, maybe you see the difference
-
2. Re: JBoss 7 - packed / unpacked EAR deployment differences
sekt Dec 21, 2011 6:19 PM (in response to wdfink)Ok - at first - the topic was wrong, because I got confused about the strange behaviour.
I'm now sure, the reason for timedObject registration-errors are not compressed bundles.
Now to the problem:
Our EARs are very simple and the structure is the same at all:
EAR1
+-- common.ejb.jar
+-- bundle1.ejb.jar
EAR1
+-- common.ejb.jar
+-- bundle2.ejb.jar
EAR3
+-- common.ejb.jar
+-- bundle3.ejb.jar
In both, common and bundleX ejb jars are simple @Stateless EJBs with @Local interfaces. The EJBs are dependants of PersistenceUnits.
EJBs of 'commen.ejb.jar' are deployed for each EAR. The local binding of common EJBs in that EARs is the same at all.
The build with maven has the same structure and resulting bundles as the IDE build.
I think there is a problem with TimerServiceRegistration, which loggs a warning when sun shines, and stops jboss-deployment if not.
Here are some outputs:
2011-12-21 23:40:30,858 WARN [org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl] (MSC service thread 1-10) Unregistered an already registered Timerservice with id BEAN1 and a new instance will be registered
2011-12-21 23:40:30,858 WARN [org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl] (MSC service thread 1-13) Unregistered an already registered Timerservice with id BEAN2 and a new instance will be registered
2011-12-21 23:40:30,860 WARN [org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl] (MSC service thread 1-3) Unregistered an already registered Timerservice with id BEAN3 and a new instance will be registered
2011-12-21 23:40:30,904 WARN [org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl] (MSC service thread 1-16) Unregistered an already registered Timerservice with id BEAN4 and a new instance will be registered
2011-12-21 23:40:30,906 WARN [org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl] (MSC service thread 1-15) Unregistered an already registered Timerservice with id BEAN5 and a new instance will be registered
..
n.ejb.timerService: Failed to start service
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1780) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [:1.7.0]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [:1.7.0]
at java.lang.Thread.run(Thread.java:722) [:1.7.0]
Caused by: java.lang.IllegalStateException: Timer service with timedObjectId: BEANX is already registered
at org.jboss.as.ejb3.timerservice.mk2.TimerServiceRegistry.registerTimerService(TimerServiceRegistry.java:44)
at org.jboss.as.ejb3.timerservice.mk2.TimerServiceFactoryImpl.createTimerService(TimerServiceFactoryImpl.java:100)
at org.jboss.as.ejb3.timerservice.TimerServiceService.start(TimerServiceService.java:71)
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1824) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1759) [jboss-msc-1.0.1.GA.jar:1.0.1.GA]
... 3 more
If the same J7AS instance is started from eclipse, the timedObject registration loggs warnings too, but does not leave the jboss-deployment with an error.
Very strange
-
3. Re: JBoss 7 - packed / unpacked EAR deployment differences
wdfink Dec 22, 2011 2:08 AM (in response to sekt)I play around with the timer service a couple of days, but 7.1, and I havn't such behaviour (ok I never deployed by eclipse).
So can you figure out one reason i.e. one of the beans and attach the source of it and the ear?
Also you might check whether 7.1 works.
-
4. Re: JBoss 7 - packed / unpacked EAR deployment differences
wdfink Dec 22, 2011 5:56 AM (in response to wdfink)It looks like that the registration of timers will be different for AS7.1. The package ..timerserver.mk2 is not longer available in AS7.1
I suppose that a registration of similar beans will work with the new version.
-
5. Re: JBoss 7 - packed / unpacked EAR deployment differences
sekt Dec 22, 2011 6:42 AM (in response to wdfink)Ok, thanks Wolf I will try to migrate to 7.1.
But can you explain, why timers are necessary for our EJBs? What kind of timing issues are addressed with the timer-registration. We've e.g. no @Schedule annotations at our EJBs. The JBoss is running with standalone-ha. An a MDB (JMS) is used in only one EAR. Does the PersistenceContext require such timer events? I need to understand, how / why JBoss behaves.
Thanks,
Steffen
-
6. Re: JBoss 7 - packed / unpacked EAR deployment differences
wdfink Dec 22, 2011 7:33 AM (in response to sekt)According to the ejb spec the container must provide a timerservice.
It might be a bit confusing that all beans are registered without having a timer, but for each SLSB you might start a timer during runtime.
So I think this will be the reason why every bean is registered during startup.
-
7. Re: JBoss 7 - packed / unpacked EAR deployment differences
wdfink Dec 22, 2011 8:11 AM (in response to sekt)By the way you should use AS7.1CR1 see http://www.jboss.org/jbossas/downloads. Its out right now!
-
8. Re: JBoss 7 - packed / unpacked EAR deployment differences
jaikiran Dec 22, 2011 8:40 AM (in response to sekt)We did actually fix a similar issue sometime back in 7.x https://issues.jboss.org/browse/AS7-2449. So yeah, try the 7.1.0.CR1 which should work fine.
-
9. Re: JBoss 7 - packed / unpacked EAR deployment differences
sekt Jan 2, 2012 4:37 AM (in response to jaikiran)Hello,
the problem seems to be fixed with 7.1.0.CR1
Thanks & a happy new year