Glassfish v3 / JNDI entry cannot be found problems!

后端 未结 4 1814
没有蜡笔的小新
没有蜡笔的小新 2021-02-06 03:30

I\'ve been having problems trying to call an EJB\'s method from a Java Application Client. Here is the code.

EJB Remote Interface

package com.test;

impo         


        
相关标签:
4条回答
  • 2021-02-06 04:21

    Actually, your problem is not the lookup of the JNDI reference of your bean or you would get something like that:

    Caused by: javax.naming.NameNotFoundException: ejb/HelloBean not found
    

    No, here, I suspect a simple classpath problem, you're simply missing some jar on the classpath of your client project. With GlassFish v3, adding $GF_HOME/modules/gf-client.jar should be enough as mentioned in How do I access a Remote EJB component from a stand-alone java client? in GlassFish's EJB FAQ (my understanding is that this jar is supposed to replace $GF_HOME/lib/appserv-rt.jar which is there for compatibility reasons with GFv2). It is however important to refer the gf-client.jar from the GlassFish installation directory or the jars declared in its manifest won't be found.

    gf-client.jar refers to many other .jars from the GlassFish installation directory so it is best to refer to it from within the installation directory itself rather than copying it (and all the other .jars) to another location.

    Once you'll have this fixed, you should be able to lookup your bean using the JNDI names that GlassFish outputs in the logs. I'd suggest to use the new portable global JNDI names from Java EE 6.

    Just in case, the What is the syntax for portable global JNDI names in EJB 3.1? entry from the GlassFish EJB FAQ provides a nice summary of this new convention. And if you want more information, check out: http://blogs.oracle.com/MaheshKannan/entry/portable_global_jndi_names.

    0 讨论(0)
  • 2021-02-06 04:27

    My stand alone client finally run! The trick was, just restarting Netbeans IDE, undeploying the application and redeploying it. This should fix your problem(assuming there is no other error in your code and configuration).

    0 讨论(0)
  • 2021-02-06 04:28

    I have encountered the same problem. I googled the web and followed tutorials from Oracle line by line to set up a standalone java client but still nothing works. I came across http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html and it has an information that I already tried to resolve the issue.

    I'll just restart my IDE, clean and build the project; may be also create the project afresh. And who knows, when the moon is full, my code might run fine :) So might wanna try that too

    0 讨论(0)
  • 2021-02-06 04:32

    I have found something! I think there is a "special way" to add and configure components using NetBeans! I've been reading the netbeans's tutorials from the web pages and apparently I was doing the things wrong! So, this is not a real solution for this problem but maybe if you read one of those http://netbeans.org/kb/trails/java-ee.html you will find your aswers!

    Regards

    0 讨论(0)
提交回复
热议问题