EJB lookup question

Suppose I have a cluster of two servers with DNS name server1 and
          server2. From an external java program, if I do a JNDI lookup using the
          host name of "server1" and look up an EJB that exists on server1, I
          should always get a reference to an EJB on server1, right? If I use a
          host name of "server1", I should never get connected to server2's naming
          server, right?
          Kirk
          

Kirk Everett <[email protected]> wrote in message news:<[email protected]>...
          > Suppose I have a cluster of two servers with DNS name server1 and
          > server2. From an external java program, if I do a JNDI lookup using the
          > host name of "server1" and look up an EJB that exists on server1, I
          > should always get a reference to an EJB on server1, right? If I use a
          > host name of "server1", I should never get connected to server2's naming
          > server, right?
          >
          > Kirk
          Kirk,
          not sure about the naming, but you could get an EJB from either
          server. To stop this you have to use a specific property
          (PIN_TO_PRIMARY_SERVER) which we haven't got to work yet!
          Matt
          

Similar Messages

  • EJB lookup returned stub from a different classloader.

    I've written an EJB for doing authenitcation. This EJB is accessed by an security-mbean (BEA's login module).
    - The EJB is deployed in an EAR.
    - The EJB-stubs are extracted and is included as part of the MBEAN Jar.
    When I hit a webapp causing the EJB lookup to occur, the stub object returned is created by the webapp's classloader. This cause a ClassCastException when trying to cast the returned home interface into the home interface of the MBEAN's classloader.
    Note that all this is happening on the same BEA server running WLS8.1.
    I don't want to put the EJB jar on the system classpath so I can redeploy the EJB, the Application's EAR and the MBEAN to a cluster.
    -alex

    Robert Greig <[email protected]> wrote:
    Thanks for responding to my question, which newsgroup is more appropriate for
    my line of question?
    But before I move this thread, I would like to add:
    I've already handled the recursion problem on top of the ejb-lookup before JNDI
    becomes avaliable (while doing server startup) problem.
    The advantage with the EJB model is this. By changing the host/port configuration,
    I can switch between a local-authentication server or a remote provide authentication
    server network configuration.
    If I were to include the necessary classes in the mbean JAR from our application,
    there maybe resources issues since I now have 2 classloaders loading my server-portion
    of classes. Not sure how that will workout with resources and all. This model
    has the disadvantage of any classes I have in the mbean JAR will require updates
    outside my EAR. This wroks against the EAR deployment model.
    -alex
    Alex Cheung wrote:
    I've written an EJB for doing authenitcation. This EJB is accessedby an security-mbean (BEA's login module).
    - The EJB is deployed in an EAR.
    - The EJB-stubs are extracted and is included as part of the MBEANJar.
    This isn't a good approach. You are pretty much stuffed mainly for the
    reasons you outline.
    Also note that if you continue to go down this road you will have to
    handle the potential recursion (i.e accessing an EJB will invoke a
    security call to your provider!).
    Why do you need to implement this as an EJB? The main advantages of EJBs
    are security and container managed transactions neither of which is
    relevant here surely?
    Robert

  • EJB lookup with weblogic?

    Hi, experts
    I have a question with the EJB lookup in weblogic, this is a question which has been asked many times when I google that. But likely there is not a clearly answer, so maybe I can get the answer from the experts?
    If we lookup an EJB, we need to use the "mappedName#interface_name" as the query name used in lookup method, Is this the only way that we query the EJB? Or is there any other ways we can simply the query name?
    Thanks for your time.

    Try posting in the forum dedicated to WLS EJB - WebLogic Server - EJB
    Also, why don't you explain what you're looking for exactly, how would you like to look up the EJB's, or are you asking for a best practice? Describing your use case will help get the best answer, right now your question is extremely generic.

  • EJB lookup works in embedded OC4J but not stand-alone

    I use JDeveloper 9.0.3.1 to develop a combined web & EJB application. The EJBs are deployed on a 9.0.3 iAS server on a different machine.
    The EJB lookup is in a helper class that's called by the servlet. For EJB lookup, I use the class "com.evermind.server.rmi.RMIInitialContextFactory" as described by the OC4J servlet guide (http://download-uk.oracle.com/docs/cd/A97688_10/generic.903/a97680/develop.htm#1003973). So my code looks like this:
    Hashtable map = new Hashtable();
    map.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
    map.put(Context.PROVIDER_URL, "ormi://server:port/app-business");
    map.put(Context.SECURITY_PRINCIPAL, "admin");
    map.put(Context.SECURITY_CREDENTIALS, "password");
    map.put("dedicated.rmicontext", "true");
    InitialContext context = new InitialContext(map);
    Object thing = context.lookup("MyEjb");
    EJBHome feedback = (EJBHome)PortableRemoteObject.narrow(thing, "com.company.ejb.MyEjbHome");
    The last insert into the map (map.put("dedicated.rmicontext", "true");) wasn't mentioned neither in the servlet guide nor the EJB one. But without it, I'd always get some "domain is null" error.
    Now this code above works flawlessly in the embedded OC4J of JDeveloper. But it always hangs in the "Object thing = context.lookup("MyEjb");" line when executed either in a stand-alone OC4J (the one from JDeveloper launched through the batch file in [JDeveloper directory]\jdev\bin\start_oc4j.bat) or in the OC4J in iAS.
    Does anybody know why this happens or how to fix it? I know that there are other ways of EJB lookup in servlets but since we also have plain Java classes for testing purposes that access EJBs, this seemed like the simplest thing to do for both Java classes and servlets.

    I was referring to the java client case where this optoin is not required. In general for web clients one doesn't use the rmi initial context to find the bean. This is because the bean and the webclient are both packaged in the same application. One defines the ejb-ref in the web.xml for the bean and then looks it using the default initial context. Something like
    Context ctx = new InitialCOntext();
    ctx.lookup("bean ejb-ref-name");
    However if you must use rmi for accessing the bean from the web client then the dedicated connection property is required.
    For java clients you would setup the rmi context environment.
    Since you are trying to use a common utility class for both java and webclient I would recommend that you look into packaging the java client as a j2ee application client. Basically in that case you would be able to define a ejb-ref in the aplication-client.xml and use the default initial context in code for both the cases.
    Hope that helps
    Dhiraj

  • EJB lookup from another EJB server

    Hi people,
    I have two application servers on two different computers. One
    of them contains an EJB, which I need to access from another EJB
    server. I know that I can achieve this using RMI, but will then
    security and transaction contexts be propagated to the called
    EJB?
    Sincerely,
    Sergei Batiuk.

    Here is the solution posted on another forum:
    [email protected] Dec 8, 6:03 am show options
    Newsgroups: ibm.software.websphere.studio
    From: [email protected]
    Date: 8 Dec 2004 06:03:04 -0800
    Local: Wed, Dec 8 2004 6:03 am
    Subject: Re: EJB lookup on from one server to another does not work
    Eric,
    I dealt with this same problem trying to run 2 local servers (websphere
    test servers), using 2 separate WSAD 5.1.2 workspaces. Running on 1
    server I have an application that contains an EJB, and running on the
    other server is an application that uses an access bean to make a
    remote call to my EJB, running on my other server. I too repeately
    received the "NameNotFoundException" when trying to lookup my EJB home
    reference.
    What you have to do to get around this is to modify the server
    configuration of the application that contains the EJB that you are
    attempting to call remotely. You must open the the server.wsi file for
    the server that is running the EJB and go to the "Configuration" tab.
    You must check the "Enable administrative console". Once this is
    complete, start your server. When it is started, right click on the
    server, and select "run administrative console". In the admin console,
    select
    servers -> application servers -> <your server> -> end points ->
    bootstrap address. For "host" you must change "localhost" to either
    your ip address or computer name (ive only tried my ip, but your
    computer name should work too). When building your properties to get
    the initial context, make sure you use
    "env.put(Context.PROVIDER_URL, "corbaloc:iiop:<the ip or computer name
    listed as the bootstrap host of server running ejb>:<the port listed as
    the bootstrap port of server running ejb, which is 2809 in your case>
    Restart your server and things should work.

  • EJB lookup on Remote Server or different domain fails

    Hi,
    I am having two different domain (domain1,domain2) respectvely. My ABC.ear j2eee application is deployed on domain2 and its iiop port is 33703.In domain1 i have xyz.war (web application) and it's IIOP port is 3700 .In xyz.war i am having CallEJB.jsp file.In this Jsp file i want to lookup an EJB Service called PaymentEJB(JNDI Name is ejb/PaymentEJB).
    The code is below
    InitialContext context=new InitialContext();
    Object objRef=context.lookup("corbaname:iiop:andaman:33703#ejb/PaymentEJB");
    I am getting the following error.
    [#|2005-12-14T16:42:03.422+0530|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._DEFAULT_.rpc.transport|_ThreadID=11;|"IOP00410216: (COMM_FAILURE) Unable to create IIOP listener on the specified host/port: all interfaces/3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
    My doubt is
    1.While starting domain1 and domain2 iiop listeners are started on the port 3700 and 33703.in that case why EJB lookup tries to create listener on one more time.
    2.I am looking the 33703 port only.but it tries to create port on 3700 why?
    3.It was working till JES2005Q1.Is there any patch i need to install? or i need to change anything in my code.
    I am frustrated with this error for past one week.I will be happy if some body will give me the peace of mind(thru some solution).

    Hi
    I found the solution for this issue.
    To lookup the EJB applications in web component,we should not set any thing in the Initial Context.i.e the lookup should be
    InitialContext initContext=new InitialContext();
    Object objref = initContext.lookup("java:comp/env/ejb/"+ejbName_);
    This will get you the Home object of the EJB you are looking.
    In your web.xml you should have the entry like below.(Just replace the ejbname which you are looking for)
    <ejb-ref>
    <ejb-ref-name>ejb/GetAssertionEJB</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <home>com.ssertion.GetAssertionHome</home>
    <remote>com.assertion.GetAssertionRemote</remote>
    </ejb-ref>
    In your sun-wb.xml,you should have the entry like below(Just replace the ejbname which you are looking for)
    <ejb-ref>
    <ejb-ref-name>ejb/GetAssertionEJB</ejb-ref-name>
    <jndi-name>corbaname:iiop:<hostname>:<iiopport>#ejb/GetAssertionEJB</jndi-name>
    </ejb-ref>
    Hope this works.

  • JNDI EJB Lookup fails on Remote Server

    Hi,
    I am having two different domain (domain1,domain2) respectvely. My ABC.ear j2eee application is deployed on domain2 and its iiop port is 33703.In domain1 i have xyz.war (web application) and it's IIOP port is 3700 .In xyz.war i am having CallEJB.jsp file.In this Jsp file i want to lookup an EJB Service called PaymentEJB(JNDI Name is ejb/PaymentEJB).
    The code is below
    InitialContext context=new InitialContext();
    Object objRef=context.lookup("corbaname:iiop:andaman:33703#ejb/PaymentEJB");
    I am getting the following error.
    [#|2005-12-14T16:42:03.422+0530|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._DEFAULT_.rpc.transport|_ThreadID=11;|"IOP00410216: (COMM_FAILURE) Unable to create IIOP listener on the specified host/port: all interfaces/3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
    My doubt is
    1.While starting domain1 and domain2 iiop listeners are started on the port 3700 and 33703.in that case why EJB lookup tries to create listener on one more time.
    2.I am looking the 33703 port only.but it tries to create port on 3700 why?
    3.It was working till JES2005Q1.Is there any patch i need to install? or i need to change anything in my code.
    I am frustrated with this error for past one week.I will be happy if some body will give me the peace of mind(thru some solution).

    http://docs.sun.com/source/819-0079/dgjndi.html
    This might help.

  • EJB interview question

    dear friends
    if any body is having a real time ejb interview question , pl. send me a link for that.
    Thanks
    Gopal

    http://forum.java.sun.com/thread.jsp?thread=333894&forum=13&message=1363968

  • Security question JAAS: performing EJB lookup and authorized creation how?

    Basic question is:
    How can I perform a lookup from within a servlet to a stateless EJB in the same JVM and apply credentials to this EJB, so method calls perform following the authorization rules supplied on the EJB?
    Trying to get this thing to work leads to:
      javax.ejb.AccessLocalException: anonymous is not allowed to call this EJB method,
           check your security settings (method-permission in ejb-jar.xml and
           security-role-mapping in orion-application.xmlI've checked this over and over, but cannot find any possible cause for the error. I've mapped the logical authorization role from the ejb-jar.xml to a user known in a JAZN resource - so I'm thinking my InitialContext call is wrong.
    Can somebody help me out?

    What version of OC4J are you using?
    Can you post your contents in the ejb-jar.xml for the method permissions for your EJB you are looking up ?
    Also please post the code that looks up the local EJB?
    -Debu

  • EJB lookup in a cluster (DNS names to servers mapping)

              I am using weblogic6.0 to setup a object clusters. Currently I have 2 physical
              machine each running one object server.
              I have a servlet in the web tier (it is not part of the cluster) that lookups
              the EJB's.
              From the documentation, I understand intialContext lookup should use one DNS name
              that maps to both the object servers.
              My question is how can I setup that ?
              - I tried the following, I am not sure if this is right
              I created a virtualhost with
              name: MyVirtualHost
              virtual host names : MyCluster (this is name of the cluster I had setup )
              Targets : MyCluster
              I tried looking up with
              t3//MyVirtualHost:7001 and t3//MyCluster:7001
              No luck in both the cases !!!!!
              Note : I restarted my weblogic servers after
              creating the virtual host. But I did not reboot my machine ( don't know if this
              is required )
              Please help !!!!
              Thanks
              Abi -
              

              You need add an entry in Domain Name Server to include your host1 and host2, and
              use it in your JNDI lookup. Or you can do:
              t3://host1,host2:7001
              Both ways should work. Will load balancing to two JNDI trees.
              Jim Zhou.
              "Abinesh Puthenpurackal" <[email protected]> wrote:
              >
              >I am using weblogic6.0 to setup a object clusters. Currently I have 2
              >physical
              >machine each running one object server.
              >
              >I have a servlet in the web tier (it is not part of the cluster) that
              >lookups
              >the EJB's.
              >
              >From the documentation, I understand intialContext lookup should use
              >one DNS name
              >that maps to both the object servers.
              >
              >My question is how can I setup that ?
              > - I tried the following, I am not sure if this is right
              > I created a virtualhost with
              > name: MyVirtualHost
              > virtual host names : MyCluster (this is name of the cluster I had
              >setup )
              > Targets : MyCluster
              >
              >I tried looking up with
              >t3//MyVirtualHost:7001 and t3//MyCluster:7001
              >
              >No luck in both the cases !!!!!
              >
              >Note : I restarted my weblogic servers after
              >creating the virtual host. But I did not reboot my machine ( don't know
              >if this
              >is required )
              >
              >Please help !!!!
              >
              >Thanks
              >Abi -
              >
              

  • Dynamic ejb lookup

    Hello Community,
    Question for u :)
    I have a necessity to dynamically lookup for ejbs' and call methods on them. I am using EJB 1.0 on VAJ. I have the string values of the home, remote and the JNDI names. I need to read those values and lookup for the bean, and call methods. I have this.
    String h = "MyEjbHome";
    String r = "MyEjbRemote";
    String jndi = "MyEjb";
    I need to do something like this..
    //parenthesis on LHS is just to explain the pbm
    (MyEjbHome) home = jndicontextfactory.lookup(jndi, Class.forName(h));
    (MyEjbRemote) remote = home.create();
    remote.myMethod();
    Now if u visualize the problem here, on the left hand side how can i dynamically give the type as (MyEjbHome) or (MyEjbRemote) when all I know is their names which are strings?
    Please share ur knowledge. Thanks

    Hi I tried this and it worked. But the thing is even though I tried PortableRemoteObject.narrow() I was still gettting ClassCastException. So I had to use reflection. Now the code looks something like this, and it works.
    // child home
    Object obj = newContext.lookup(childJNDI);
    // get the create method
    Method m = obj.getClass().getMethod("create", null);
    // create the remote inteface for child
    Object objRemote = m.invoke(obj, null);
    // cast the child remote to the parent remote
    ParentRemote re = (ParentRemote) PortableRemoteObject.narrow(objRemote, ParentRemote.class);
    re.soSomething();
    Thanks much for your help. I appreciate it.
    look at this:
    http://forums.java.sun.com/thread.jsp?forum=13&thread=2
    8593

  • EJB Lookup Frustration

    Hello,
    We have 2 OC4J instances deployed in our application. Both the OC4J instances run on seperate machines on seperate Oracle J2EE (Standalone) installations. One of the OC4J instances has an EJB application which we try to call from the other OC4J instance. We use normal Java Context lookups with the following code:
    env                     =      new Hashtable();
                   //env.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
                   env.put(Context.INITIAL_CONTEXT_FACTORY,InitialDataLoader.getPropertyValue("INITIAL_CONTEXT_FACTORY"));
                   env.put(Context.SECURITY_PRINCIPAL, "admin");
                   env.put(Context.SECURITY_CREDENTIALS, "welcome");
                   //env.put(Context.PROVIDER_URL, "ormi://localhost:3108/fcxmlg38");
                   env.put(Context.PROVIDER_URL,InitialDataLoader.getPropertyValue("PROVIDER_URL"));
                   env.put("dedicated.connection","true");
                   System.out.println("environment connection is*********"+env);
                   Log.warn("hashtable of the context is****"+env,"UtilityWarn.log");
                   ctx                     =      new InitialContext(env);
    Object obj = ctx.lookup(strFlexmlJndiName);
    Log.warn("This Object is*****"+obj,"UtilityWarn.log");
    aIFEjbProcHome = (IFEjbProcHom)PortableRemoteObject.narrow(obj,IFEjbProcHom.class);
    aIFEjbProcRem = aIFEjbProcHome.create();
    The point is we get the handle to the remote...but after a period of inactivity when the application tries to access the EJB , the application hangs....on start and stop of the OC4J instances, we get the handle again...This is turning out to be frustrating as there seems to be no logic to this kind of "un"persistent connection...any kind of help would be gladly appreciated...thanks.....
    a very frustrated developer....VJ

    Hello,
    The version of the Oracle Application Server is:
    9.0.2.0.0. So using "opmn:ormi" is out of the question
    The problem seems to crop up pretty often. "dedicated.rmicontext=true" is for version 9.0.3 and above not for Base Release. We have exhausted all options of maintaining a dedicated connection...because it behaves very wierdly....A new problem is that the first hit after an inactivity results in a hang ...but subsequent hits give us a proper response from the EJB....This is really getting frustrating as I am just not able to predict the reason for this uncertainty....
    Can someone please enlighten me as I have started going back to my basics in EJB to actaully understand how this stuff works...
    Thanks....Still very frustrated to the core....
    VJ

  • EJB Doubts/Questions - HELP

    Hi All,
    I am new to EJB technology and i am learning EJB without training canter. I am just going through Java EE tutorials available on www.oracle.com .
    My knowledge of EJB Session bean say:
    1.     Stateful Session Bean     : Maintains the client state.
    2.     Stateless Session Bean     : Does not maintain the client state.
    Now I am developing Shopping Cart Example using EJB, Servlet, JSP and HTML pages.
    My Project contains following pages:
    1.     login.html
    2.     AuthenticateServlet.java
    3.     User.jsp
    4.     PurchaseServlet
    5.     PurchaseSuccessful.jsp
    6.     AuthenticateBean – Stateful Session Bean
    7.     AutheticateBeanRemote – Remote Interface of Authenticate Bean
    8.     PurchaseBean – StatefulSession Bean
    9.     PurchaseBeanRemote -- Remote Interface of PurchaseBean
    Session Bean with its remote interface is maintained in the ejb package.
    Login.html contains;
    1.     textbox named “txtUser”
    2.     Password textbox named “txtPass”
    3.     Submit Button
    On submitting the credentials, it will check for the authentication in the AuthenticateServlet.
    AuthenticateBean contains
    public boolean authenticate(String user, String pwd)
         if(anylogic)
    return true;
         else
              return false;
    The above method is exposed in AuthenticateBeanRemote Interface.
    2. AuthenticateServlet contains
    I have done lookup of AuthenticateBeanRemote and have created abr. Below some important code of AuthenticateServlet;
    String user = request.getParamter("txtUser") ;
    String pwd = request.getParamter("txtPassr") ;
    boolean flag = abr.authenticate(user,pwd);
    if(flag)
         // then it will direct the control to User Page
    else
    out.println("Failure");
    User.jsp page will show me the UserID and some task that the authenticated user can do.
    My question: is while redirecting the page to User.jsp from AuthenticateServlet, do I need to do URLRewritting to maintain the session or do I need to create separate HTTPSession Object or does the Stateful session bean will take care of session management on its own. i.e. no need to do anything, just transfer or redirect to User.jsp page .
    User.jsp has purchase catalog of which the user will select products and click on purchase. On clicking purchase, it will take us to PurchaseServlet.
    My question Now in the PurchaseServlet if I have written the code to access the methods in PurchaseBean, Whether it will be a guarantee that the authernticated and currently logged in user is accessing the methods so that only that person’s purchased items are visible and no mishap will occur regarding the user integrity.
    PurchaseBean only contains the method to add the amount.
    My Question: if at the same time 2-3 users are logging in the application, then whether by using the statefulsession bean, user integrity is maintained. OR do I need to use some other approach.
    Please help me... I know these questions are silly but that’s the way the technology can be learned.

    user8687589 wrote:
    Please help me... I know these questions are silly but that’s the way the technology can be learned.You are SO wrong. You learn it by:
    a) reading and studying
    b) really understanding not only the technology but also the theory behind the technology
    c) learning how it works, why it works, when it works and when you should or shouldn't use it
    A common denominator here is that you apply thought, reason and intelligence to get not only the basics but the big picture. Don't learn how to use it: UNDERSTAND it. That does not include just demanding all the answers in a forum and expect to have the answers spoon-fed to you. First read and study, then we'll talk.

  • EJB Sample Question

    Hi there,
    My questions here referred to WebLogic server 6.1 examples.ejb20.basic.statelessSession
    and I m yet not attended any J2EE classes yet.
    1. What does the method ejbPassivate() and setSessionContext(SessionContext ctx)
    invoked inside TraderBean class does? Since I can't find any codes called the setSessionContext
    that needs a input parameter?
    2. Under ejbCreate(), the line statd Integer tl = (Integer) ic.lookup("java:/comp/env/tradeLimit");,
    where do i get java:/comp/env/tradeLimit? Is that stated inside the ejb-jar.xml under
    the entry <env-entry>?
    3. Can explain what are the steps invoked inside the build.xml after compiling the
    class files?
    4. What does the weblogic-ejb-jar.xml does?
    Thanks
    Neo

    For 1 & 2 You need to read a EJB Book. There is a free one available at
    www.theserverside.com.
    for 4, look at
    http://e-docs.bea.com/wls/docs61/ejb/index.html
    "Neo Gigs" <[email protected]> wrote in message
    news:3cbe4ab1$[email protected]..
    >
    Hi there,
    My questions here referred to WebLogic server 6.1examples.ejb20.basic.statelessSession
    and I m yet not attended any J2EE classes yet.
    1. What does the method ejbPassivate() andsetSessionContext(SessionContext ctx)
    invoked inside TraderBean class does? Since I can't find any codes calledthe setSessionContext
    that needs a input parameter?
    2. Under ejbCreate(), the line statd Integer tl = (Integer)ic.lookup("java:/comp/env/tradeLimit");,
    where do i get java:/comp/env/tradeLimit? Is that stated inside theejb-jar.xml under
    the entry <env-entry>?
    3. Can explain what are the steps invoked inside the build.xml aftercompiling the
    class files?
    4. What does the weblogic-ejb-jar.xml does?
    Thanks
    Neo

  • EJB Newbie Question

    I am totally new to EJB and I have gone through Sun's tutorial at http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/GettingStarted.html and I've got everything in the tutorial working with the Sun J2EE server installed on my computer. They teach you how to write a bean and call it from a client application and from a .JSP page using the web server installed with J2EE on port 8080. Now, I want to call it from my ColdFusionMX page using the CFMX web server and I can't figure it out. Can anybody help me? I'm not sure what I need to do in CFMX to get the Java bean to work. I realize this is also a question for the ColdFusion community, but I'm sure connecting from ColdFusion is not very much different than from other languages.
    I created a very watered down ColdFusion version of the JSP page provided by Sun in the EJB tutorial. However, it looks like the JNDI lookup is not working for some reason. I think the problem is that I need to specify that the lookup will occur on my JNDI port, which is 10500 on my local host. It looks like it is trying to use a ColdFusion JNDI service that does not have the EJB installed or something like that. I would appreciate some code samples of how to get this to work. I can't find any good sites that give you a walk through of how this is supposed to work.
    Keep in mind this does work when I call the .JSP version of this page through the J2EE web server. The trick is for me to get this working in ColdFusion.
    Thanks everybody!
    Jon
    test.cfm
    <%@page import =
    "java.math.*,javax.naming.*,javax.rmi.PortableRemoteObject,java.rmi.RemoteEx
    ception,Converter,ConverterHome" %>
    <html>
    <head>
    <title>Converter</title>
    </head>
    <body bgcolor="white">
    <cfscript>
    initialContext = createObject("java", "javax.naming.InitialContext");
    ejbHome = initialContext.lookup("java:comp/env/ejb/TheConverter");
    </cfscript>
    I hope this page doesn't throw an error.
    </body>
    </html>
    page output
    Error Occurred While Processing Request
    No such binding: ejb
    The Error Occurred in C:\CFusionMX\wwwroot\test.cfm: line 51
    49 : initialContext = createObject("java", "javax.naming.InitialContext");
    50 :
    51 : ejbHome = initialContext.lookup("java:comp/env/ejb/TheConverter");

    It looks like it is
    trying to use a ColdFusion JNDI service that does not
    have the EJB installed or something like that. maybe... I am not familiar with CF.
    I would
    appreciate some code samples of how to get this to
    work. Install trial version of JRun 4.0, it has code samples how to call EJB from CF script.
    good luck
    Maris

Maybe you are looking for

  • Itunes 12.0.1 cannot find track names online when importing CD. Help??

    When I insert a new CD that I had bought iTunes cannot find the track names online. Once the CD is inserted and showing up in iTunes as track 1, track 2, etc. I click on option and select get track names again and then a message reading no error pops

  • How can i run Lightroom 3.6 with RAW files from Canon 650D?

    How can i run Lightroom 3.6 with RAW files from Canon 650D?

  • Osx mountain lion has network problems

    After downloading my mac book pro (& retina display) looses netwetwork. I must re-boot mac book pro all the time! Please help! Det.

  • V1.0 to ship when?

    I know, EVERYBODY would like to know exactly when v1.0 will be available for purchase/download, rather than just "mid-February," but I've got a specific reason I need to know: I've got a big, important shoot the week of Feb. 12, and need to ship fina

  • Oracle Application 11i using multi node installation

    Hi every one, Can anyone help me to install in multi node. /d01 is in dbtier(1st unit) and /u01 is in appstier(2nd unit). how to install that kind of split configuration.? do i need to stage in appstier? and run rapidwiz? how to copy configuration fi