The jndi pattern should be defined for each component as described in https://community.jboss.org/blogs/marek-novotny/2011/07/29/seam-2-booking-example-on-jboss-as-7
jndi pattern and seam 2.3 ear
-
14-01-2022 - |
Question
I'm trying to migrate my seam 2.2 application to seam 2.3.
I'm using an ear packaged application that consists of several modules.
When I try to load a page I get the following error:
Caused by: javax.naming.NameNotFoundException: AdmissionDAOImpl -- service jboss.naming.context.java.app.Cosara.AdmissionDAOImpl
at org.jboss.as.naming.ServiceBasedNamingStore.lookup(ServiceBasedNamingStore.java:97)
at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:178)
at org.jboss.as.naming.InitialContext.lookup(InitialContext.java:123)
at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:214)
at javax.naming.InitialContext.lookup(InitialContext.java:392) [rt.jar:1.6.0_37]
at org.jboss.seam.Component.instantiateSessionBean(Component.java:1407) [jboss-seam.jar:2.3.0.Final]
at org.jboss.seam.Component.instantiate(Component.java:1370) [jboss-seam.jar:2.3.0.Final]
at org.jboss.seam.Component.newInstance(Component.java:2186) [jboss-seam.jar:2.3.0.Final]
... 63 more
My Jboss AS 7.1.1 server gives me the following jndi patterns to locate the AdmissionDAOImpl.
java:global/Cosara/Cosara2IntDAO/AdmissionDAOImpl!be.ugent.cosara2.dao.AdmissionDAO
java:app/Cosara2IntDAO/AdmissionDAOImpl!be.ugent.cosara2.dao.AdmissionDAO
java:module/AdmissionDAOImpl!be.ugent.cosara2.dao.AdmissionDAO
java:global/Cosara/Cosara2IntDAO/AdmissionDAOImpl
java:app/Cosara2IntDAO/AdmissionDAOImpl
java:module/AdmissionDAOImpl
What JNDI pattern should I use with seam to locate the EJB? Here I've used
java:app/#{ejbName}
Also tried
java:app/Cosara.jar/#{ejbName}
Is there something to replace Cosara.jar in the pattern above to make it more generic?
La solution
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow