Lookup ejb

Hi Experts.
I have created an CAF project with an Application Service and one method.
I need to use this Application Service in a Web application like as EJB.
I put the public parts of caf-ejb in used dcs of my web application.
I declared a reference of the caf-ear in my project ear that include my web app.
I declared a ejb local reference in web.xml
I declared a ejb local ref in web-j2ee-engine.xml
i follow this document Accessing EJB Applications Using JNDI
but i get this error
com.sap.engine.services.jndi.persistent.exceptions.NamingException: Exception during lookup operation of object with name
webContainer/applications/tridmen.com.br/pegasus~ear/LocalDevelopment~pegasus~war~tridmen.com.br/java:comp/env/ejb/TridApprovalBusinessBean,
cannot resolve object reference. [Root exception is com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException:
Path to object does not exist at tridmen.com.br, the whole lookup name is tridmen.com.br/trd_aprv.caf/TridApprovalBusiness.]
Could someone help me?
I try to find in some other threads but nothing happenned me.
I am using netweaver version 7.0.
Thanks and regards

Solved.
I get the JNDI name in Visual Administrator and put the string localsejb/ in fromt of jndi.
After that i added a reference to ejb caf-ear project in ear project that include my war.
To make a look up in this way:
ctx.lookup(localsejb/JNDI_NAME_IN_VISUAL_ADMINISTRATOR);
That works.
Marcos Brandã

Similar Messages

  • How to lookup EJBs deployed in OC4J from a standalone client application

    Hello all,
    I am trying to lookup an EJB deployed in OC4J 10.1.3 from a standalone client application using the following code:
    Hashtable env = new Hashtable();
    env.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
    env.put(Context.PROVIDER_URL, "ormi://localhost:23791");
    env.put(Context.SECURITY_PRINCIPAL, "jazn.com/test");
    env.put(Context.SECURITY_CREDENTIALS, "test");
    Context context = new InitialContext(env);
    Object ref = context.lookup("ejb/Dispatch");
    I get the following error:
    javax.naming.NameNotFoundException: ejb/Dispatch not found
         at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:51)
         at javax.naming.InitialContext.lookup(InitialContext.java:347)
    For the lookup string I've also tried:
    "java:comp/env/ejb/Dispatch" and "Dispatch"
    For the Context.PROVIDER_URL property I've also tried:
    opmn:ormi://localhost:6003:instance
    The result is always the same.
    I appreciate if someone could help me with this?
    Thanks,
    Georgi

    Georgi,
    Your question has been discussed many times on this forum. Search the forum archives for "RMIInitialContextFactory".
    The PROVIDER_URL needs to include the name of the deployed application that your EJB is part of, for example:
    env.put(Context.PROVIDER_URL, "ormi://localhost:23791/MyApp");The lookup name has to be the value of the "ejb-name" element in your "ejb-jar.xml" descriptor file.
    Your SECURITY_PRINCIPAL value looks strange to me. Personally, I use "principals" (and not JAZN), so I modified the "application.xml" file (in the "j2ee/home/config" subdirectory) to use "principals". Look for the following comment in that file:
    <!-- Comment out the jazn element to use principals.
          When both jazn and principals are present jazn is used  -->Good Luck,
    Avi.
    Message was edited by:
    Avi Abrami

  • Lookup EJB without JNDI

    Hi,
    Using WLS7.0 on HP-UX,
    I have my client and the EJBs on the same WL server. Tilll WL6.0 I had
    to do a JNDI lookup to get to my EJB on my local machine. I noticed that
    it has a huge overhead attached to the lookup. In WL 7.0 is there any
    other way to lookup EJBs other than JNDI if they all reside in the same
    WLS container.
    Thanks
    Raj

    Hi,
    Using WLS7.0 on HP-UX,
    I have my client and the EJBs on the same WL server. Tilll WL6.0 I had
    to do a JNDI lookup to get to my EJB on my local machine. I noticed that
    it has a huge overhead attached to the lookup. In WL 7.0 is there any
    other way to lookup EJBs other than JNDI if they all reside in the same
    WLS container.
    Thanks
    Raj

  • I can't lookup EJB (3.0) in WebLogic 12 using ENC

    I have a simple application divided in 2 modules:
    HolaMundo - Servlet component
    SimpleEJB - EJB Component
    The EJB Component use EJB 3.0. I created a local business interface with one method. A stateless EJB that implement that interface. And I use the ejb-jar.xml for declare it.
    And a Servlet that use the EJB.
    In Glassfish or Tomee this way for working with EJB works, but i don't understand why it doesn't work in WebLogic 12...
    When i try to access to the servlet, i get an error. this is the error:
    javax.naming.NameNotFoundException: While trying to look up /app/SimpleEJB/Example!com.edwin.ejb.ExampleLocal in /app/webapp/HolaMundo.war/1051995086.; remaining name '/app/SimpleEJB/Example!com/edwin/ejb/ExampleLocal'
      at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1180)
      at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:146)
    Servlet:
    package servlet;
    import java.io.IOException;
    import java.io.PrintWriter;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import com.edwin.ejb.ExampleLocal;
    public class EJB extends HttpServlet {
       private static final long serialVersionUID = 1L;
       @Override
       protected void doGet(HttpServletRequest arg0, HttpServletResponse arg1)
       throws ServletException, IOException {
       PrintWriter out = arg1.getWriter();
       ExampleLocal el2;
       try {
      el2 = (ExampleLocal) new InitialContext()
       .lookup("java:app/SimpleEJB/Example!com.edwin.ejb.ExampleLocal");
       out.println("EJBBBB: " + el2.nombre());
       } catch (NamingException e) {
      e.printStackTrace();
    Local business interface:
    package com.edwin.ejb;
    public interface ExampleLocal {
        public String nombre();
    EJB Stateless:
    package com.edwin.ejb;
    public class Example implements ExampleLocal{
        @Override
        public String nombre() {
            return "Edwin";
    ejb-jar.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd">
      <display-name>SimpleEJB </display-name>
      <enterprise-beans>
        <session>
            <ejb-name>Example</ejb-name>
            <business-local>com.edwin.ejb.ExampleLocal</business-local>
            <ejb-class>com.edwin.ejb.Example</ejb-class>
            <session-type>Stateless</session-type>
        </session>
      </enterprise-beans>
    </ejb-jar>

    Both answers did not work. I do not understand why it did not work because in other Java EE Servers it works.
    My JNDI Tree (Screenshot):
    http://oi58.tinypic.com/vs1jjd.jpg
    However, i could get the EJB when i use the Global ENC, but i got a Casting Exception...
    Eg:
    try {
      ej = (EjLocal) new InitialContext().lookup("java:global.EjemploEJB.Ej!stateless.EjLocal");
      out.print("EJ: "+ej.ej());
    } catch (NamingException e) {
      e.printStackTrace();
    Output:
    java.lang.ClassCastException: stateless.Ej_1aafe_EjLocalImpl cannot be cast to stateless.EjLocal
    at servlet.Ejemplo.doGet(Ejemplo.java:33)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731).....
    There is a strange value in the EJB's JNDI Tree:
    Header 1
    Header 2
    Binding Name:
    java:global.EjemploEJB.Ej!stateless.EjLocal
    Class:
    stateless.Ej_1aafe_EjLocalImpl
    Hash Code:
    2021087981
    toString Results:
    stateless.Ej_1aafe_EjLocalImpl@78775aed

  • Lookup ejb in another application in same container

    Hi,
    The 1012 ejb faq http://www.oracle.com/technology/tech/java/oc4j/1012/collateral/OC4J-EJB-FAQ-101202.pdf states:
    "If you want to access an EJB in another application in the same OC4J container you do not have to use RMIInitialContextFactory and you can make the application that contains your application as the parent of your application from your you are trying to access EJBs from e.g. ..."
    Question: The FAQ implies that the "parent" attribute is NOT necessary to facilitate this situation and RMIInitialContextFactory may be used - is this correct? I have not found any examples that demonstrate how to do this as elsewhere in the Oracle doco they seem to imply that "parent" must be used (but not in 10.1.3). Can anyone please clarify this and/or what works and what doesn't?
    Note: The lookup of remote ejb from another application in same container does work without the parent attribute, its just subsequent calls from a 3rd application or redeploy breaks.
    My problem: I get a ClassCastException when :
    a) lookup remote EJB (in application A) following redeploy of application B
    b) the next invocation of the application A method from client application C
    Thanks for any advice,
    Paul

    Your understanding is correct.
    If you make application a to be the parent application of app b; then app b could access app a without using RMIInitialContext.
    Also you could use RMIInitialContext to obtain the object without using "parent application" approach, example:
    Hashtable env = new Hashtable();
    env.put("java.naming.factory.initial",
    "com.evermind.server.rmi.RMIInitialContextFactory");
    env.put("java.naming.provider.url","ormi://remotehost/bmpapp");
    env.put("java.naming.security.principal","SCOTT");
    env.put("java.naming.security.credentials","TIGER");
    Context context = new InitialContext(env);
    Object homeObject =
    context.lookup("java:comp/env/EmployeeBean");
    For this servlet example, you also need to declare <ejb-ref> elements in the web.xml file:
    <ejb-ref>
    <ejb-ref-name>EmployeeBean</ejb-ref-name>
    <ejb-ref-type>Entity</ejb-ref-type>
    <home>bmpapp.EmployeeHome</home>
    <remote>bmpapp.Employee</remote>
    </ejb-ref>
    In addition, orion-web.xml, must include a mapping from the logical name EmployeeBean to the actual JNDI name where the EJB is bound, as shown in the following example:
    <ejb-ref-mapping name="EmployeeBean" location="bmpapp/EmployeeBean" />
    Hope this helps,
    -Frances

  • Lookup ejb deployed in wls8.1 from wls9.2 env

    hi guys
    i was wondering if anyone had encountered problem when looking up home interface of ejb deployed in weblogic814 from weblogic9.2? basically i have an ejb build with weblogic.appc task and deployed in wls814. this also generated a client jar to use. so, from wls9.2, i had a simple webservice implemented with a POJO. when it tried to lookup the home interface of the ejb in 8, it failed with
    <WSEE>java.lang.IncompatibleClassChangeError: class FacadeEJB_g5wccg_HomeImpl_814_WLStub has
    interface weblogic.rmi.extensions.server.Stub as super class<ComponentHandler.h
    andleRequest:115>i think this must have something to do with compatibility between 8 and 9. i was wondering if anyone knows about this and had a solution for it. ur help is much appreciated.

    Hi..
    Even we are also facing the same pbm..Any one with a solution ?

  • Webservices lookup EJB error

    This are the sever log .
    ejb ref resolution error for remote business interfacetest.session.Hello [Root exception is java.lang.RuntimeException: Could not invoke defineClass!]
         at com.sun.ejb.EJBUtils.lookupRemote30BusinessObject(EJBUtils.java:350)
         at com.sun.ejb.containers.RemoteBusinessObjectFactory.getObjectInstance(RemoteBusinessObjectFactory.java:61)
         at javax.naming.spi.NamingManager.getObjectInstance(NamingManager.java:304)
         at com.sun.enterprise.naming.SerialContext.lookup(SerialContext.java:314)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)
         at my.sample.server.ServiceImpl.hello(ServiceImpl.java:24)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:589)
         at com.sun.xml.ws.server.PeptTie._invoke(PeptTie.java:58)
         at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.invokeEndpoint(SOAPMessageDispatcher.java:278)
         at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher$SoapInvoker.invoke(SOAPMessageDispatcher.java:586)
         at com.sun.xml.ws.protocol.soap.server.SOAPMessageDispatcher.receive(SOAPMessageDispatcher.java:145)
         at com.sun.xml.ws.server.Tie.handle(Tie.java:88)
         at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.handle(WSServletDelegate.java:333)
         at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:288)
         at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:77)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
         at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:278)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
         at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:231)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
         at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
         at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
         at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
         at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
    Caused by: java.lang.RuntimeException: Could not invoke defineClass!
         at com.sun.corba.ee.impl.codegen.CodeGeneratorUtil.makeClass(CodeGeneratorUtil.java:69)
         at com.sun.corba.ee.spi.codegen.Wrapper._generate(Wrapper.java:933)
         at com.sun.ejb.EJBUtils$2.run(EJBUtils.java:507)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sun.ejb.EJBUtils.generateAndLoad(EJBUtils.java:504)
         at com.sun.ejb.EJBUtils.loadGeneratedGenericEJBHomeClass(EJBUtils.java:441)
         at com.sun.ejb.EJBUtils.lookupRemote30BusinessObject(EJBUtils.java:323)
         ... 43 more
    Caused by: java.lang.reflect.InvocationTargetException
         at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:589)
         at com.sun.corba.ee.impl.codegen.CodeGeneratorUtil.makeClass(CodeGeneratorUtil.java:66)
         ... 49 more
    Caused by: java.lang.NoClassDefFoundError: com/sun/ejb/containers/GenericEJBHome
         at java.lang.ClassLoader.defineClass1(Native Method)
         at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
         ... 53 more
    Message was edited by:
    JDigest

    dude, if you check the profile of the original poster you'll see that the last time he/she posted was in 2006, so you can wait a long time for a response.
    Start a new thread, describe your problem well (what do you do, post relevant code, post your exception stacktrace). In the mean time, you could also try a google search for the search terms "ejb ref resolution error for remote business interface".

  • Can not lookup EJB from another EAR file, the ClassCastException returned

    Hi,
         I try to call EJB module in A.ear from Servlet in another EAR file(B.ear) the ClassCastException returned on the context.lookup() code . So when i create a Dynamic Web Project(With the same code as Servlet in B.ear) and pack it in A.ear(The same EAR file with EJB module), it work fine. I have no idea. Could you please suggest me.
    The ClassCastException : incompatible with interface ..... return on
    HelloManBeanLocalHome home=(HelloManBeanLocalHome) ctx.lookup("localejbs/sap.com/HelloMan_EAR/HelloManBean");
    The entire code is below :
              try {               
                   InitialContext ctx=new InitialContext();
                   HelloManBeanLocalHome home=(HelloManBeanLocalHome) ctx.lookup("localejbs/sap.com/HelloMan_EAR/HelloManBean");
                   HelloManBeanLocal remote=home.create();
                   lookupText=remote.helloMan("Test");
              } catch (Exception e) {
                   // TODO: handle exception
                   e.printStackTrace(out);
    Many Thanks

    Hi Saleem Mohammad.
               Thank a lot for your post. I got this idea from your link. The below code work fine.
              try {               
                   InitialContext ctx=new InitialContext();
                   Object obj= ctx.lookup("localejbs/sap.com/HelloMan_EAR/HelloManBean");
                    ClassLoader homeCl = obj.getClass().getClassLoader();
                    Class<?> localHome = homeCl.loadClass(HelloManBeanLocalHome.class.getCanonicalName());
                    java.lang.reflect.Method method = localHome.getMethod("create");               
                    Object homeObj = (Object)method.invoke(obj);
                    ClassLoader localCl=homeObj.getClass().getClassLoader();
                    Class<?> local = localCl.loadClass(HelloManBeanLocal.class.getCanonicalName());
                    Class  args[] = {String.class};
                    java.lang.reflect.Method localMethod=local.getMethod("helloMan",args);               
                    Object params[]={"Thongie"};
                    Object localObj = (Object)localMethod.invoke(homeObj,params);
                    lookupText=(String)localObj;               
              } catch (Exception e) {
                   // TODO: handle exception
                   e.printStackTrace(out);

  • Can not lookup EJB

    11g
    When i run a unit test, and lookup the remote interface. ClassNotFoundException. From JNDI tree, i can find the remote interface. Please find the details trace, thanks for your help.
    at weblogic.ejb.container.internal.RemoteBusinessIntfGenerator.generateRemoteInterface(RemoteBusinessIntfGenerator.java:84)
         at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.readObject(RemoteBusinessIntfProxy.java:211)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)
         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1849)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
         at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
         at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:197)
         at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:564)
         at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:193)
         at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:240)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
         at weblogic.jndi.internal.ServerNamingNode_1031_WLStub.lookup(Unknown Source)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:400)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:388)
         at javax.naming.InitialContext.lookup(InitialContext.java:392)

    Hi Saleem Mohammad.
               Thank a lot for your post. I got this idea from your link. The below code work fine.
              try {               
                   InitialContext ctx=new InitialContext();
                   Object obj= ctx.lookup("localejbs/sap.com/HelloMan_EAR/HelloManBean");
                    ClassLoader homeCl = obj.getClass().getClassLoader();
                    Class<?> localHome = homeCl.loadClass(HelloManBeanLocalHome.class.getCanonicalName());
                    java.lang.reflect.Method method = localHome.getMethod("create");               
                    Object homeObj = (Object)method.invoke(obj);
                    ClassLoader localCl=homeObj.getClass().getClassLoader();
                    Class<?> local = localCl.loadClass(HelloManBeanLocal.class.getCanonicalName());
                    Class  args[] = {String.class};
                    java.lang.reflect.Method localMethod=local.getMethod("helloMan",args);               
                    Object params[]={"Thongie"};
                    Object localObj = (Object)localMethod.invoke(homeObj,params);
                    lookupText=(String)localObj;               
              } catch (Exception e) {
                   // TODO: handle exception
                   e.printStackTrace(out);

  • Unable to Lookup EJB

    Hello,
    I am trying to lookup an EJB from my web app using the following code and web.xml entry.
    Context ctx = new InitialContext();
    NavigatorHome home = (NavigatorHome)ctx.lookup("java:comp/env/ejb/NavigatorEJB");
    <ejb-ref>
    <ejb-ref-name>ejb/diamelle.ebc.Navigator</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <home>diamelle.ebc.NavigatorHome</home>
    <remote>diamelle.ebc.Navigator</remote>
    <ejb-link>NavigatorEJB</ejb-link>
    </ejb-ref>
    It produces the error below. Any ideas?
    Thanks in advance.
    Suneet
    [03/Jun/2003:14:57:04] WARNING ( 2064): CORE3283: stderr: javax.naming.NamingException: invocation exception
    [03/Jun/2003:14:57:04] WARNING ( 2064): CORE3283: stderr: at com.sun.enterprise.naming.NamingManagerImpl.getComponentId(NamingManagerImpl.java:990)
    [03/Jun/2003:14:57:04] WARNING ( 2064): CORE3283: stderr: at com.sun.enterprise.naming.NamingManagerImpl.lookup(NamingManagerImpl.java:789)
    [03/Jun/2003:14:57:04] WARNING ( 2064): CORE3283: stderr: at com.sun.enterprise.naming.java.javaURLContext.lookup(javaURLContext.java:107)
    [03/Jun/2003:14:57:04] WARNING ( 2064): CORE3283: stderr: at javax.naming.InitialContext.lookup(InitialContext.java:347)

    Suneet,
    You are doing a look up by using NavigatorEJB. So you should use the same JNDI name in the web.xml as well.
    Change <ejb-ref-name>ejb/diamelle.ebc.Navigator</ejb-ref-name> to <ejb-ref-name>ejb/Navigator</ejb-ref-name>. I think it will work.

  • Unable to lookup ejb local home interface after moving to wls 7.0

    I'm getting an exception trying to lookup an ejb's local home interface
    which I believe was deployed correctly. On startup I get the message:
    EJB Deployed EJB with JNDI name
    com.logistics.basedata.ejb.shipperspecificfveb.ShipperSpecificFVDOLocalHome.
    However, when I try to do a lookup using this jndi name, I get the
    following exception:
    javax.naming.LinkException: . Root exception is
    javax.naming.NameNotFoundException: Unable to resolve
    'app/ejb/ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificfveb/local-home'
    Resolved: 'app/ejb'
    Unresolved:'ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificfveb'
    ; remaining name
    'ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificfveb/local-home'
    The name it can't resolve is different than the name I was trying to
    look up. I can see
    com.logistics.basedata.ejb.shipperspecificfveb.ShipperSpecificFVDOLocalHome
    in the jndi tree through the admin console, but the attributes Object
    Class, Object Hash Code, and Object To String are blank.
    This worked with weblogic 6.1 sp3. Is there something I missed in the
    migration to 7.0?
    Any help would be appreciated. Thanks in advance,
    -Brad

    That explains it - in 7.0 (unlike 6.1 - then the only factor was
    classloaders arrangement) client has to be
    in the same application (ear) - note JNDI links used to be able to lookup
    local homes.
    "Brad Geddes" <[email protected]> wrote in message
    news:[email protected]...
    I'm looking it up from a web application. I did notice a message on thistopic
    from last thursday (subject: "Pls Help! Failed to access local Sessionbean in
    7.0!"). In it, the individual said he had to add ejb-local-ref elementsin the
    web.xml. I tried this but can't seem to get it to work.
    javax.naming.NameNotFoundException: Unable to resolve ejb-link.
    ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificfveb isnot in
    the context. The context includes the following link bindings: {} Makesure the
    link reference is relative to the URI of the referencing module.
    Also, I don't have a war or ear in the environment I'm working in; theejb's are
    all deployed separately in jar files, and the web app is in explodedformat.
    >
    -Brad
    "Dimitri I. Rakitine" wrote:
    Are you looking up the local home from outside of an application ?
    "Brad Geddes" <[email protected]> wrote in message
    news:[email protected]...
    I'm getting an exception trying to lookup an ejb's local home
    interface
    which I believe was deployed correctly. On startup I get the message:
    EJB Deployed EJB with JNDI name
    com.logistics.basedata.ejb.shipperspecificfveb.ShipperSpecificFVDOLocalHome.
    >>>
    However, when I try to do a lookup using this jndi name, I get the
    following exception:
    javax.naming.LinkException: . Root exception is
    javax.naming.NameNotFoundException: Unable to resolve
    'app/ejb/ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificf
    veb/local-home'
    Resolved: 'app/ejb'
    Unresolved:'ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecif
    icfveb'
    ; remaining name
    'ShipperSpecificFVDO.jar#com.logistics.basedata.ejb.shipperspecificfveb/loca
    l-home'
    The name it can't resolve is different than the name I was trying to
    look up. I can see
    com.logistics.basedata.ejb.shipperspecificfveb.ShipperSpecificFVDOLocalHome
    in the jndi tree through the admin console, but the attributes Object
    Class, Object Hash Code, and Object To String are blank.
    This worked with weblogic 6.1 sp3. Is there something I missed in the
    migration to 7.0?
    Any help would be appreciated. Thanks in advance,
    -Brad
    Dimitri--
    Dimitri

  • Connection refused error when trying to to lookup EJB in iAS

    Hi,
    I tried to write a client that uses an EJB in an 9.0.3 iAS running on windows NT SP6, and the JNDI lookup keeps failing with the following error:
    javax.naming.NamingException: Lookup error: java.net.ConnectException: Connection refused: connect; nested exception is:
    java.net.ConnectException: Connection refused: connect
         java.lang.Object com.evermind.server.rmi.RMIContext.lookup(java.lang.String)
              RMIContext.java:134
         java.lang.Object javax.naming.InitialContext.lookup(java.lang.String)
              InitialContext.java:345
         void Samplecom.mind.ejb.stubs.AccountComplexStubClient.main(java.lang.String[])
              AccountComplexStubClient.java:24
    I am using the following properties for the lookup:
    env.putContext.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
    env.put(Context.SECURITY_PRINCIPAL, "ias_admin");
    env.put(Context.SECURITY_CREDENTIALS, "ias_admin1");
    env.put(Context.PROVIDER_URL, "ormi://localhost:23791/mindejb");
    Where:
    * 23791 is the port configured in the rmi.xml
    * mindejb is the name of the module
    * ias_admin1 is the correct password of ias_admin user
    Similar properties worked for a stand alone oc4j. What have I done wrong?
    Any help will be appreciated.
    Thanks,
    Avi

    Hi -
    I can resend what I think I would have said later on. No guarantees though ;-)
    What you need to do is to look at the RMI port range allocated in the opmn.xml file for the OC4J instance you are trying to connect to. OPMN basically looks at the first number, and determines if the port is free. If it is, it will use it. If it's not, it will go to the next sequential number and try that, etc.
    So if you have a defined port range of 3101-3200 and you only have one process, then it's a pretty safe bet (unless another rogue process has grabbed it) that the port you need will be the first one listed - 3101. If you specified two JVM processes to be started for the instance, then it's likely that 3101 and 3102 will be used.
    I think that's what I'd written in the truncated text.
    In our forthcoming 904 release, we're providing a port lookup service which will be able to be used by remote clients to discover the RMI ports used for OC4J instances. This will then avoid the client (and admins) needing to know and publish the specific ports used. Since OPMN itself knows which ports have been allocated, it can be queried by remote clients to find out where to connect. I've not seen the final spec, but I think this lookup will be transparent to the client in terms of code and will only require the addition of a prefix to the provider.url property used in jndi.propeties.
    It's likely to be of a format such as opmn:lookup:ormi://<known-ias-host-location>.
    Sorry about the truncation, it looks like that has now been rectified for the forums.
    -steve-

  • Error to lookup  ejb

    HI,
    what is this error:
    java.lang.NoClassDefFoundError: java/lang/AssertionError
    at weblogic.security.subject.DelegatingSubjectStack.<clinit>(DelegatingS
    ubjectStack.java:18)
    at weblogic.security.service.SubjectManagerImpl.<init>(SubjectManagerImp
    l.java:40)
    at weblogic.security.service.SubjectManagerImpl.ensureInitialized(Subjec
    tManagerImpl.java:277)
    at weblogic.jndi.WLInitialContextFactoryDelegate.<clinit>(WLInitialConte
    xtFactoryDelegate.java:137)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:120)
    at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialCont
    extFactory.java:131)
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:6
    65)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246
    at javax.naming.InitialContext.init(InitialContext.java:222)
    at javax.naming.InitialContext.<init>(InitialContext.java:198)
    at JNDIUtil.getContextFull(JNDIUtil.java
    :174)

    Jen,
    "Jen" <[email protected]> wrote in message news:3f823e8e$[email protected]..
    what is this error:
    java.lang.NoClassDefFoundError: java/lang/AssertionError
    at weblogic.security.subject.DelegatingSubjectStack.<clinit>(DelegatingS
    ubjectStack.java:18)
    at weblogic.security.service.SubjectManagerImpl.<init>(SubjectManagerImp
    l.java:40)Looks like you're trying to run weblogic 8.1 under JDK 1.3.1. Weblogic 8.1
    needs JDK 1.4.1 to run under.
    Slava

  • EJB 3.0 and jndi lookup (simple question)

    hi all,
    i am newbie on Weblogic Application Server and i have some issues,
    i have weblogic application server 10.0, also i have oracle timesten in-memory database, i have configured datasource and deploy my ejb 3.0 application, but i could not done jndi lookup?
    here is my example:
    1. one stateless session bean :
    import javax.ejb.Remote;
    @Remote
    public interface InsertSubscriber {
         public void insertSubscriber(SubscriberT subscriberT);
    } 2. here is it's implementation :
    @Remote(InsertSubscriber.class)
    @Stateless
    public class InsertSubscriberBean implements InsertSubscriber {
         @PersistenceContext(unitName = "TimesTenDS")
         private EntityManager oracleManager;
         public void insertSubscriber(SubscriberT subscriber)
              try {
                   System.out.println("started");
                   oracleManager.persist(subscriber);
                   System.out.println("end");
              } catch (Exception e) {
                   e.printStackTrace();
    }3 and my test client :
    public class Client {
         public static void main(String[] args) {
              Context ctx = null;
              Hashtable ht = new Hashtable();
              ht.put(Context.INITIAL_CONTEXT_FACTORY,
                        "weblogic.jndi.WLInitialContextFactory");
              ht.put(Context.PROVIDER_URL, "t3://192.9.200.222:7001");
              try {
                   ctx = new InitialContext(ht);
                   InsertSubscriber usagefasade = (InsertSubscriber) ctx
                             .lookup("ejb.InsertSubscriberBean");               
              } catch (NamingException e) {
                   e.printStackTrace();
              } finally {
                   try {
                        ctx.close();
                   } catch (Exception e) {
                        e.printStackTrace();
    }what i did incorrect ???
    i got error like this : Name not fount exception
    when i tried to view jndi tree on weblogic server application console i found this :
         Binding Name:     
    TimestenExampleTimestenExample_jarInsertSubscriberBean_InsertSubscriber     
         Class:     
    test.InsertSubscriberBean_o7jk9u_InsertSubscriberImpl_1000_WLStub     
         Hash Code:     
    286     
         toString Results:     
    weblogic.rmi.internal.CollocatedRemoteRef - hostID: '2929168367193491522S::billing_domain:AdminServer', oid: '286', channel: 'null'what does it mean how i can done lookup to jndi ?
    Regards,
    Paata Lominadze,
    Magticom LTD.
    Georgia.

    Hi All,
    I am using the weblogic cluster with session replication and EJB 2.0 with Local entity beans.
    for fail-over session should be replicated to another server so we can achive the same session if 1st server fails.
    Suppose i m using two managed server(server1,server2) in the cluster.I am storing the object of class ABC into session and object contains the instance of Local-EntityBean home but i put that as a transient.I have also override the readObject and write object method.
    when write object is called on 1st server,readObject method should be called on second server so we will be sure that session is replicating properly.
    pleaase find the code below : -
    public IssuerPageBean() {
    initEJB();
    private void readObject(java.io.ObjectInputStream stream) throws IOException, ClassNotFoundException {
    stream.defaultReadObject();
    initEJB();
    initializeCommonObject();
    private void writeObject(java.io.ObjectOutputStream stream) throws IOException {
    stream.defaultWriteObject();
    private void initEJB() {
    try {
    ic = new InitialContext();
    issuerHome = (LocalIssuerHome) ic.lookup("java:comp/env/Issuer");
    } catch (NamingException e) {
    e.printStackTrace();
    in my case if i am calling the constructor IssuerPageBean(),it calls the initEJB() method and lookeup the entity local home properly but when readObject method is called on another server only initEJB() method is called directly and getting the exception below :
    WARNING: Error during create -
    javax.naming.NameNotFoundException: remaining name: env/ejb/Client
    at weblogic.j2eeclient.SimpleContext.resolve(Ljavax/naming/Name;Z)Ljavax/naming/Context;(SimpleContext.java:35)
    at weblogic.j2eeclient.SimpleContext.resolve(Ljavax/naming/Name;)Ljavax/naming/Context;(SimpleContext.java:39)
    at weblogic.j2eeclient.SimpleContext.lookup(Ljavax/naming/Name;)Ljava/lang/Object;(SimpleContext.java:57)
    at weblogic.j2eeclient.SimpleContext.lookup(Ljavax/naming/Name;)Ljava/lang/Object;(SimpleContext.java:57)
    at weblogic.j2eeclient.SimpleContext.lookup(Ljava/lang/String;)Ljava/lang/Object;(SimpleContext.java:62)
    at weblogic.jndi.factories.java.ReadOnlyContextWrapper.lookup(Ljava/lang/String;)Ljava/lang/Object;(ReadOnlyCont
    extWrapper.java:45)
    at weblogic.jndi.internal.AbstractURLContext.lookup(Ljava/lang/String;)Ljava/lang/Object;(AbstractURLContext.jav
    a:130)
    at javax.naming.InitialContext.lookup(Ljava/lang/String;)Ljava/lang/Object;(InitialContext.java:347)
    at com.lb.equities.veda.tools.salesvault.jsp.ClientPageBean.initEJB()V(ClientPageBean.java:218)
    at com.lb.equities.veda.tools.salesvault.jsp.ClientPageBean.readObject(Ljava/io/ObjectInputStream;)V(ClientPageB
    ean.java:191)
    at java.lang.LangAccessImpl.readObject(Ljava/lang/Class;Ljava/lang/Object;Ljava/io/ObjectInputStream;)V(Unknown
    Source)
    at java.io.ObjectStreamClass.invokeReadObject(Ljava/lang/Object;Ljava/io/ObjectInputStream;)V(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.readObject()Ljava/lang/Object;(Unknown Source)
    at java.util.HashMap.readObject(Ljava/io/ObjectInputStream;)V(Unknown Source)
    at java.lang.LangAccessImpl.readObject(Ljava/lang/Class;Ljava/lang/Object;Ljava/io/ObjectInputStream;)V(Unknown
    Source)
    at java.io.ObjectStreamClass.invokeReadObject(Ljava/lang/Object;Ljava/io/ObjectInputStream;)V(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.defaultReadFields(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V(Unknown Source)
    at java.io.ObjectInputStream.readSerialData(Ljava/lang/Object;Ljava/io/ObjectStreamClass;)V(Unknown Source)
    at java.io.ObjectInputStream.readOrdinaryObject(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.readObject0(Z)Ljava/lang/Object;(Unknown Source)
    at java.io.ObjectInputStream.readObject()Ljava/lang/Object;(Unknown Source)
    at weblogic.common.internal.ChunkedObjectInputStream.readObject()Ljava/lang/Object;(ChunkedObjectInputStream.jav
    a:120)
    at weblogic.rjvm.MsgAbbrevInputStream.readObject(Ljava/lang/Class;)Ljava/lang/Object;(MsgAbbrevInputStream.java:
    121)
    at weblogic.cluster.replication.ReplicationManager_WLSkel.invoke(ILweblogic/rmi/spi/InboundRequest;Lweblogic/rmi
    /spi/OutboundResponse;Ljava/lang/Object;)Lweblogic/rmi/spi/OutboundResponse;(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(Lweblogic/rmi/extensions/server/RuntimeMethodDescriptor;Lweblogic
    /rmi/spi/InboundRequest;Lweblogic/rmi/spi/OutboundResponse;)V(BasicServerRef.java:492)
    Please help .
    Thanks in Advance.
    Edited by hforever at 03/04/2008 7:28 AM

  • How do I lookup an EJB 3.0 Session bean from servlet or JSP?

    Does anyone knows how can I invoke an EJB from a servlet or JSP ?
    I deployed a simple EJB on a Oracle Application Server 10g release 10.1.3 and I'm working with JDeveloper 10.1.3. I deployed the files via JDeveloper, and I didn´t specify any orion-ejb-jar.xml or ejb-jar.xml file
    After deployment, the orion-ejb-jar.xml look like this in the server:
    <?xml version="1.0" encoding="utf-8"?>
    <orion-ejb-jar xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-ejb-jar-10_0.xsd" deployment-version="10.1.3.0.0" deployment-time="10b49516c8f" schema-major-version="10" schema-minor-version="0" >
    <enterprise-beans>
    <session-deployment name="HolaMundoEJB" location="HolaMundoEJB" local-location="HolaMundoEJB_HolaMundoEJBLocal" local-wrapper-name="HolaMundoEJBLocal_StatelessSessionBeanWrapper6" remote-wrapper-name="HolaMundoEJB_StatelessSessionBeanWrapper7" persistence-filename="HolaMundoEJB.home_default_group_1">
    </session-deployment>
    </enterprise-beans>
    <assembly-descriptor>
    <default-method-access>
    <security-role-mapping name="<default-ejb-caller-role>" impliesAll="true" />
    </default-method-access>
    </assembly-descriptor>
    </orion-ejb-jar>
    I'm trying to invoke the ejb in a servlet by doing the following:
    public void doGet(HttpServletRequest request, ....
    Context context = new InitialContext();
    HolaMundoEJB helloWorld =
    (HolaMundoEJB)context.lookup("java:com/env/ejb/HolaMundoEJB");
    String respuesta = helloWorld.sayHello("David");
    When i invoke the servlet I catch a NamingException whose message says something
    like this ....java:com/env/ejb/HolaMundoEJB not found in webLlamaEJB
    I tried different paths for the lookup but nothing....
    Can anyone help me with this topic? Thank you.

    Please try the following code:
    HelloEJBBean.java:
    @Stateless(name="Hello")
    @Remote(value={Hello.class})
    public class HelloEJBBean implements Hello {  ... }
    hello.jsp:
    Context ctx = new InitialContext();
    Hello h = (Hello)ctx.lookup("ejb/Hello");
    web.xml:
    <ejb-ref>
    <ejb-ref-name>ejb/Hello</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <remote>fi.kronodoc.test.model.Hello</remote>
    </ejb-ref>
    i think you should also define jndi mappings for the references in orion-ejb-jar.xml and orion-web.xml but for some reason it seems to be working also without these.

Maybe you are looking for

  • How do I get past region screen on app store

    Hello, I just bought an iphone 5s and when I tap the "app store" app it opens up to the Accounts Settings Country or Region screen. I choose the United States and it says to "tap next". The problem I encounter is there is no "next" to tap, it is just

  • Interactive sorting using java crystalReportViewer

    we are building a crystal report web project using eclipse gallieo. technologies used are Struts2 AND jsp. And our requirement is to show interactive sorting as well as to export as HTML as crystal report viewer toolbar option . we have done a lot se

  • Why I can't login to the Twitter app on my ipod?

    Why I can't login to the  Twitter app on my ipod? I know my password is right but it says username or password could not be authenticated please check to make sure you entered them right. However I know I did it right. My Ipod is up to date and I hav

  • Media Sync Error - encountered a problem

    I have a 8330, upgrade my Desktop Manager to V4.6 and running V4.3 on BB.  I am trying to get MusicSync to work, but I get a error each time I goto to start it up. "MusicSync has encountered a problem and needs to close. We are sorry for the inconven

  • Color Correction: Canvas color is off from exported video

    Hey everyone, Forgive me if this has been covered before, but I've been searching around and can't find the answer I'm looking for. When I color correct a video, I get it to where I want in the canvas, and then go to export. When I export the video,