11 Replies Latest reply: Mar 9, 2012 7:04 AM by Sony Abraham RSS

    JNDI naming issue: Migrating to AS7 using EJB 2.1

    Newbie

      Hi,

      I'm trying to migrate my ear-File from JBoss 5.1 to JBoss AS 7.01. I'm using EJB 2.1 and cannot change to 3.0 right now.

      My application deploys, but when I start the application I run into JNDI naming problems since the JNDI naming rules have changed from 2.1 to 3.0

      (javax.naming.NameNotFoundException: Name 'myapp' not found in context '')

       

      In the documentation( https://docs.jboss.org/author/display/AS7/Order+Application+Migration+from+EAP5.1+to+AS7 ) they solved it by changing the code to use the @EJB annotation. They write there, that this is not a required change. [ I cannot change to EJB 3.0, so I need another solution. ]

       

      Important: My ear-file needs to be deployable on different AS as well (IBM Websphere etc.), so I'm restricted in terms of making code changes.

       

      What do you recommend?

       

       

      Ideas and comments:

       

      - Is there a way to alias the JNDI names or to use a mapping from the new JNDI namespace to the 2.1 standard i.e from

      java:app/OrderManagerEJB/ProductManagerBean!services.ejb.ProductManager

      to

      OrderManagerApp/ProductManagerBean/local

       

      - In a German Java journal they write that you have to adapt the ServiceLocator. How does that work? Is this possible when I also want to use the ear-File on other ASs? [They also write that EJB 2.1 is again completely supported in AS 7.1.0, do I have to wiat?]

       

      - In https://docs.jboss.org/author/display/AS7/Seam+2+Booking+EAR+Migration+of+Binaries+-+Step+by+Step they resolve the JNDI naming problems using the components.xml. Can I use a similar solution? Unfortuantely the components.xml is part of Seam 2...

       

      I apprecite your help;)

      J.