SLSB not bound to JNDI in 4.0.4RC1?
dparrilla Feb 17, 2006 5:26 PMHi all,
I'm in the middle of the painful migration of our code from 4.0.3SP1 to 4.0.4RC1, and everything was going smoothly until I faced this very strange problem: Not all my EJB3 SLSB inside my EAR are bounded to the JNDI tree. Only one is bounded, and it is the last one in the deployment order.
Here goes the traces of the server when deploying:
23:11:38,683 INFO [EARDeployer] Init J2EE application: file:/C:/workspace/newco/dist/999newco.ear/ 23:11:45,823 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=CandidateBean, class=com.newco.candidate.CandidateBean, type=STATELESS 23:11:45,833 INFO [Ejb3Deployment] EJB3 deployment time took: 50 23:11:45,903 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=AuthenticationBean, class=com.newco.authentication.AuthenticationBean, type=STATELESS 23:11:45,903 INFO [Ejb3Deployment] EJB3 deployment time took: 60 23:11:45,943 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=MailMDB, class=com.newco.core.mail.MailMDB, type=MESSAGE_DRIVEN 23:11:45,954 INFO [Ejb3Deployment] EJB3 deployment time took: 31 23:11:45,994 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=RendererMDB, class=com.newco.core.renderer.RendererMDB, type=MESSAGE_DRIVEN 23:11:46,014 INFO [Ejb3Deployment] EJB3 deployment time took: 40 23:11:46,064 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=SiteBean, class=com.newco.site.SiteBean, type=STATELESS 23:11:46,064 INFO [Ejb3Deployment] EJB3 deployment time took: 20 23:11:46,144 INFO [Ejb3AnnotationHandler] found EJB3: ejbName=SearchBean, class=com.newco.search.SearchBean, type=STATELESS 23:11:46,144 INFO [Ejb3Deployment] EJB3 deployment time took: 60 23:11:46,374 INFO [Ejb3Deployment] EJB3 deployment time took: 200 23:11:46,414 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=100candidateEJB.jar,name=CandidateBean with dependencies: 23:11:46,414 INFO [JmxKernelAbstraction] persistence.units:unitName=newcoPar 23:11:46,414 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/100candidateEJB.jar 23:11:46,434 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=102authenticationEJB.jar,name=AuthenticationBean with dependencies: 23:11:46,434 INFO [JmxKernelAbstraction] persistence.units:unitName=newcoPar 23:11:46,444 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/102authenticationEJB.jar 23:11:46,464 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=103mailMDB.jar,name=MailMDB with dependencies: 23:11:46,695 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/103mailMDB.jar 23:11:46,765 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=104rendererMDB.jar,name=RendererMDB with dependencies: 23:11:46,945 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/104rendererMDB.jar 23:11:46,945 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=105siteEJB.jar,name=SiteBean with dependencies: 23:11:46,945 INFO [JmxKernelAbstraction] persistence.units:unitName=newcoPar 23:11:46,975 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/105siteEJB.jar 23:11:47,015 INFO [JmxKernelAbstraction] installing MBean: jboss.j2ee:service=EJB3,ear=999newco.ear,jar=108searchEJB.jar,name=SearchBean with dependencies: 23:11:47,315 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/108searchEJB.jar 23:11:47,315 INFO [EJB3Deployer] Deployed: file:/C:/workspace/newco/dist/999newco.ear/001PAR.par
The only SLSB bounded is SearchBean, as you can read in the jmx console:
Global JNDI Namespace +- 999newco (class: org.jnp.interfaces.NamingContext) | +- SearchBean (class: org.jnp.interfaces.NamingContext) | | +- local (proxy: $Proxy95 implements No ClassLoaders found for: com.newco.bean.ISearchLocal (no security manager: RMI class loader disabled)) | | +- remote (proxy: $Proxy94 implements No ClassLoaders found for: com.newco.bean.ISearchRemote (no security manager: RMI class loader disabled)) +- XAConnectionFactory (class: org.jboss.mq.SpyXAConnectionFactory) +- TopicConnectionFactory (class: org.jboss.naming.LinkRefPair) +- UIL2ConnectionFactory[link -> ConnectionFactory] (class: javax.naming.LinkRef) +- UserTransactionSessionFactory (proxy: $Proxy27 implements interface org.jboss.tm.usertx.interfaces.UserTransactionSessionFactory) +- UIL2XAConnectionFactory[link -> XAConnectionFactory] (class: javax.naming.LinkRef) +- QueueConnectionFactory (class: org.jboss.naming.LinkRefPair) +- topic (class: org.jnp.interfaces.NamingContext) | +- testDurableTopic (class: org.jboss.mq.SpyTopic) | +- testTopic (class: org.jboss.mq.SpyTopic) | +- securedTopic (class: org.jboss.mq.SpyTopic) +- queue (class: org.jnp.interfaces.NamingContext) | +- D (class: org.jboss.mq.SpyQueue) | +- mailQueue (class: org.jboss.mq.SpyQueue) | +- C (class: org.jboss.mq.SpyQueue) | +- B (class: org.jboss.mq.SpyQueue) | +- A (class: org.jboss.mq.SpyQueue) | +- testQueue (class: org.jboss.mq.SpyQueue) | +- rendererQueue (class: org.jboss.mq.SpyQueue) | +- ex (class: org.jboss.mq.SpyQueue) | +- DLQ (class: org.jboss.mq.SpyQueue) +- ConnectionFactory (class: org.jboss.mq.SpyConnectionFactory) +- UserTransaction (class: org.jboss.tm.usertx.client.ClientUserTransaction) +- jmx (class: org.jnp.interfaces.NamingContext) | +- invoker (class: org.jnp.interfaces.NamingContext) | | +- RMIAdaptor (proxy: $Proxy26 implements interface org.jboss.jmx.adaptor.rmi.RMIAdaptor,interface org.jboss.jmx.adaptor.rmi.RMIAdaptorExt) | +- rmi (class: org.jnp.interfaces.NamingContext) | | +- RMIAdaptor[link -> jmx/invoker/RMIAdaptor] (class: javax.naming.LinkRef) +- UILXAConnectionFactory[link -> XAConnectionFactory] (class: javax.naming.LinkRef) +- UILConnectionFactory[link -> ConnectionFactory] (class: javax.naming.LinkRef)
I have compared my code with the Trailblazer demo, and in the demo all EJBs are inside a single .jar file, but in my application every single EJB goes inside its own .jar file. In the Trailblazer demo all EJBs are bounded properly to the JNDI tree.
Its sounds to me like a bug in the EJB3 deployer, unable to manage more than one .jar file with EJBs.
I have browsed JIRA, but I have not found anything about it.
Anybody can help?
Cheers
Diego