This content has been marked as final.
Show 2 replies
-
1. Re: Calling EJB Remote Interface
jaikiran Jun 28, 2006 2:42 AM (in response to ashudagr8)In the web.xml of your war, have the following entry:
<ejb-ref> <ejb-ref-name>GiveAnyNameByWhichYouWouldLikeToReferTheBeanInYourWebApp</ejb-ref-name> <ejb-ref-type>session</ejb-ref-type> <home>packageName.ClassNameOfTheHomeObjectOfTheBeanYouWantToRefer</home> <remote>packageName.ClassNameOfTheRemoteObjectOfTheBeanYouWantToRefer</remote> </ejb-ref>
In the jboss-web.xml of your war, have the following entry:
<ejb-ref> <ejb-ref-name>GiveAnyNameByWhichYouWouldLikeToReferTheBeanInYourWebApp(This should be same as the one given in the web.xml above)</ejb-ref-name> <jndi-name>TheJndiNametoWhichTheBeanIsBound(Example:somecontext/somejndiName)YouWillFindThisJndiNameInTheJboss.xmlOfTheEJB</jndi-name> </ejb-ref>
For more info, have a look at the dtds of web.xml :
http://java.sun.com/dtd/web-app_2_3.dtd
and jboss-web.xml:
http://www.jboss.org/j2ee/dtd
In your code, do the lookup as:
Context ic = new InitialContext(); Object ejbHome = ic.lookup("java:comp/env/TheNameThatYouHadGivenInTheEJB-REF-NAMETagOfJbossWeb.xmlAbove");
Here's an example:
web.xml:
<ejb-ref> <ejb-ref-name>MyTestBean</ejb-ref-name> <ejb-ref-type>session</ejb-ref-type> <home>com.test.ejb.MyBeanHome</home> <remote>com.test.ejb.MyBeanRemote</remote> </ejb-ref>
jboss-web.xml:<ejb-ref> <ejb-ref-name>MyTestBean</ejb-ref-name> <jndi-name>myejb/test/MyTestBean</jndi-name> </ejb-ref>
Lookup code:
Context ic = new InitialContext(); Object ejbHome = ic.lookup("java:comp/env/MyTestBean");
-
2. Re: Calling EJB Remote Interface
ashudagr8 Jun 28, 2006 3:32 AM (in response to ashudagr8)Thanks JaiKiran..!!!