geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jarek Gawor" <jga...@gmail.com>
Subject Re: jndi lookup in remote client for geronimo v2
Date Fri, 14 Sep 2007 18:13:14 GMT
I have some tests in Geronimo that might help.

If you have a EJB 2.x take a look at:
http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/webservices-testsuite/jaxrpc-tests/jaxrpc-ejb/

And for the client take a look at the testEJB() function in
http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/webservices-testsuite/jaxrpc-tests/jaxrpc-ejb/src/test/java/org/apache/geronimo/testsuite/testset/JaxRPCTest.java?view=markup

If you have EJB 3.0 take a look at:
http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/webservices-testsuite/jaxws-tests/jaxws-ejb/

And for the client take a look at the testEJB() function in
http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/webservices-testsuite/jaxws-tests/jaxws-ejb/src/test/java/org/apache/geronimo/testsuite/testset/JaxWSTest.java?view=markup

Jarek

On 9/14/07, vrm <vijeshmehta@hotmail.com> wrote:
>
> I'm having the exact same issue. I've spent 2 days looking around and there
> is no examples or documentations available for a Remote openejb client
> accessing an EJB on Geronimo 2.
>
> Anybody have an EAR for Geronimo2 and an Openejb-Client app accessing it?
>
> The Exception I get =
> javax.naming.NameNotFoundException: /TheBean does not exist in the system.
> Check that the app was successfully deployed.
>
> I've tried the following for InitialContext.lookup =
> (artifactid)/(TheBean)/(TheInterface)
> (artifactid)/(Interface)
> (ejbBean)/(Interface)
> (artifactid)/(TheBean)/(Full Path to Interface)
> ...and many more variations of this
>
>
> My EJB Interface =
>
> @Remote
> public interface TheInterface {
>
>
> My Bean =
> @Stateless
> public class TheBean implements TheInterface {
>
>
> Anybody get this to work or have examples, please post.
>
>
>
>
> Xiao-fei Song wrote:
> >
> > Hi,
> >
> > Just wanted to let you know I modified a little bit about the code:
> >
> >         props.setProperty("java.naming.factory.initial",
> > "org.apache.openejb.client.RemoteInitialContextFactory");
> >         props.setProperty("java.naming.provider.url", "127.0.0.1:4201");
> >         props.setProperty("java.naming.security.principal", "system");
> >         props.setProperty("java.naming.security.credentials", "manager");
> >
> >         Context ic = new InitialContext(props);
> >         System.out.println("ic = " + ic);
> >
> >         Object objRef = ic.lookup("MySessionRemoteHome");
> >         System.out.println("objRef = " + objRef);
> >
> >         test.abc.MySessionRemoteHome home =
> > (test.abc.MySessionRemoteHome)PortableRemoteObject.narrow(objRef,
> > test.abc.MySessionRemoteHome.class);
> >         System.out.println("home = " + home);
> >
> >         test.abc.MySessionRemote remote = home.create();
> >         System.out.println("remote = " + remote);
> >
> >         String message = remote.getString();
> >         System.out.println("message = " + message);
> >
> >
> > and it works okay on geronimo 1.2 beta. So this really makes me confused,
> > is this a regression or intended to be. Can someone in this alias please
> > respond me?
> >
> > Thanks,
> > Chris
> >
> >
> > Xiao-fei Song wrote:
> >>
> >> Hi Mark,
> >>
> >> Thanks for your response.
> >>
> >> 1. For the time being, I don't really care if the client is really
> >> "remote". From my tests, it looks like only "127.0.0.1" is accepted
> >> otherwise the connects just failed. I don't know where the documentation
> >> can be found on this.
> >>
> >> 2. Yes I assume all the libraries are there for the EJB call. And they
> >> are:
> >>
> >> cglig-nodep
> >> geronimo-kernel
> >> openejb-core
> >> openejb-client
> >> j2ee.jar (from j2ee ri)
> >>
> >> 3. Unfortunately it does not work with "ejb/MySessionRemoteHome" and here
> >> is what I got:
> >>
> >> ic = javax.naming.InitialContext@1e51060
> >> Exception in thread "main" javax.naming.NameNotFoundException:
> >> /ejb/MySessionRemoteHome does not exist in the system.  Check that the
> >> app was successfully deployed.
> >>         at
> >> org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:231)
> >>         at javax.naming.InitialContext.lookup(Unknown Source)
> >>         at apachegclient.TestClient.main(TestClient.java:43)
> >>
> >>
> >> I would say my first experiences with Genonimo is frustrated because I
> >> just spent a whole day on a very simple task. Anyway, if you have the
> >> sample code (both the ejb and the ejb client) that works with geronimo
> >> v2, please send it to my email address.
> >>
> >> Thanks,
> >> Chris
> >>
> >>
> >>
> >> Mark Aufdencamp wrote:
> >>>
> >>> Hi Chris,
> >>>
> >>> I'll give it a shot at helping you.  I've been able to do this thanks to
> >>> much help from others on this list.
> >>>
> >>> Are you truly doing this as a remote client from a different machine
> >>> than the server?  If so, the IP addres your using for the naming
> >>> provider should be the server address, rather than the local loopback
> >>> address.
> >>>
> >>> Do you have all of the required remote client libraries in the class
> >>> path for the remote EJB call?  I can look back at my notes and provide
> >>> these if you need them.
> >>>
> >>> I believe the remote name will probably be proceeded by "ejb".  As in
> >>> "ejb/MySessionRemoteHome".
> >>>
> >>> I can dig up some code of my own that works if you'ld like.
> >>>
> >>> Hope this helps some.
> >>>
> >>> Mark Aufdencamp
> >>> Mark@Aufdencamp.com
> >>>
> >>>> -------- Original Message --------
> >>>> Subject: jndi lookup in remote client for geronimo v2
> >>>> From: Xiao-fei Song <xfsong_chris@yahoo.com>
> >>>> Date: Fri, June 29, 2007 7:04 am
> >>>> To: user@geronimo.apache.org
> >>>>
> >>>> Hi guys,
> >>>>
> >>>> I have developed an EJB 2.x stateless session using netbeans, and I
> >>>> want to write a very simple stand alone ejb client to access it in
> >>>> geronimo v2. The code looks like below:
> >>>>
> >>>>
> >>>>         props.setProperty("java.naming.factory.initial",
> >>>> "org.openejb.client.RemoteInitialContextFactory");
> >>>>         props.setProperty("java.naming.provider.url",
> >>>> "127.0.0.1:4201");
> >>>>         //props.setProperty("java.naming.security.principal",
> >>>> "testuser");
> >>>>         //props.setProperty("java.naming.security.credentials",
> >>>> "testpassword");
> >>>>
> >>>>         Context ic = new InitialContext(props);
> >>>>         System.out.println("ic = " + ic);
> >>>>
> >>>>         Object objRef = ic.lookup("MySessionRemoteHome");
> >>>>
> >>>> I read the documentation and it looks like the only way to lookup in
> >>>> the remote client is through jndi-name in openejb-jar.xml. And I have
> >>>> done that as below:
> >>>>
> >>>> <?xml version="1.0"?>
> >>>>   <openejb-jar
> >>>>     xmlns="http://www.openejb.org/xml/ns/openejb-jar-2.1"
> >>>>     xmlns:naming="http://geronimo.apache.org/xml/ns/naming-1.1"
> >>>>     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2">
> >>>>
> >>>>    <enterprise-beans>
> >>>>       <session>
> >>>>         <ejb-name>MySessionBean</ejb-name>
> >>>>         <jndi-name>MySessionRemoteHome</jndi-name>
> >>>>       </session>
> >>>>     </enterprise-beans>
> >>>>   </openejb-jar>
> >>>>
> >>>> After the ejb is deployed to geronimo, I ran the client and found
> >>>> below error:
> >>>>
> >>>> ic = javax.naming.InitialContext@1e51060
> >>>> Exception in thread "main" javax.naming.NameNotFoundException:
> >>>> /MySessionRemoteHome does not exist in the system.  Check that the app
> >>>> was successfully deployed.
> >>>>         at
> >>>> org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:231)
> >>>>         at javax.naming.InitialContext.lookup(Unknown Source)
> >>>>         at apachegclient.TestClient.main(TestClient.java:43)
> >>>>
> >>>>
> >>>> Anyone has any idea what's going on?
> >>>>
> >>>> Thanks,
> >>>> Chris
> >>>>
> >>>>
> >>>> ---------------------------------
> >>>> Ready for the edge of your seat? Check out tonight's top picks on
> >>>> Yahoo! TV.
> >>>>
> >>>> ---------------------------------
> >>>> Now that's room service! Choose from over 150,000 hotels
> >>>> in 45,000 destinations on Yahoo! Travel to find your fit.
> >>>
> >>>
> >>>
> >>
> >>
> >
> >
>
> --
> View this message in context: http://www.nabble.com/jndi-lookup-in-remote-client-for-geronimo-v2-tf3999496s134.html#a12680611
> Sent from the Apache Geronimo - Users mailing list archive at Nabble.com.
>
>

Mime
View raw message