Glassfish 无法实例化InitialContext

Glassfish 无法实例化InitialContext,glassfish,jms,Glassfish,Jms,我有一个类充当Glassfish V3 JMS队列的独立客户端。这个类在我的本地主机上运行良好,即glassfish服务器和独立客户端都在我的本地PC上 现在我需要在Linux机器上安装这个客户机。Glassfish V3已在此Linux计算机上运行。我已经从glassfish安装目录中添加了appserv-rt.jar,并将其添加到standlaone客户端的目录中,并设置了类路径。但我一直在犯这样的错误: javax.naming.NoInitialContextException: Can

我有一个类充当Glassfish V3 JMS队列的独立客户端。这个类在我的本地主机上运行良好,即glassfish服务器和独立客户端都在我的本地PC上

现在我需要在Linux机器上安装这个客户机。Glassfish V3已在此Linux计算机上运行。我已经从glassfish安装目录中添加了
appserv-rt.jar
,并将其添加到standlaone客户端的目录中,并设置了类路径。但我一直在犯这样的错误:

javax.naming.NoInitialContextException: Cannot instantiate class: com.sun.enterprise.naming.SerialInitContextFactory [Root exception is java.lang.ClassNotFoundException: com.sun.enterprise.naming.SerialInitContextFactory]
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
        at javax.naming.InitialContext.init(InitialContext.java:223)
        at javax.naming.InitialContext.<init>(InitialContext.java:197)
        at com.cisco.zbl.controller.ZblBulkUploadThread.run(ZblBulkUploadThread.java:55)
        at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: com.sun.enterprise.naming.SerialInitContextFactory
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Class.java:247)
        at com.sun.naming.internal.VersionHelper12.loadClass(VersionHelper12.java:46)
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:654)
        ... 5 more
错误出现在这一行:
jndiContext=newinitialcontext(props)

如果使用
InitialContext
的no-arg构造函数,则没有任何区别

下面是调用此java程序(Standlaone客户端)的unix shell脚本:


请帮助我-我已经在这个问题上纠缠了很长时间。

执行
哪个java
命令,看看jdk是否被正确拾取。我怀疑linux是否选择了gc4j

更新:

换行
CLASSPATH=.:$APP_HOME/lib/gf client.jar:$APP_HOME/lib/zbl.jar:$APP_HOME/lib/log4j-1.2.4.jar:$APP_-HOME/lib/javaee.jar:$APP_-HOME/lib/poi-20111217.jar:$APP_-HOME/lib/poi-examples-3.8-beta5-20111217:$APP_-HOME/lib/poi-ooxml-3.8-beta5-20111217:$APP_-HOME/lib/poi-ooxml-schemas-3.8-beta5-20111217:$APP_-HOME/poi-servpad-20111217:$APP-beta5-20111217:$APP到

CLASSPATH=.:$APP_HOME/lib/gf-client.jar:$APP_HOME/lib/zbl.jar:$APP_HOME/lib/log4j-   1.2.4.jar:$APP_HOME/lib/javaee.jar:$APP_HOME/lib/poi-3.8-beta5-20111217.jar:$APP_HOME/lib/poi-examples-3.8-beta5-20111217:$APP_HOME/lib/poi-excelant-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-schemas-3.8-beta5-20111217:$APP_HOME/lib/poi-scratchpad-3.8-beta5-20111217:$APP_HOME/lib/appserv-rt.jar

很抱歉听起来很幼稚-但什么是gc4j?Java版本显示“1.6.0_24”。我可以在那台机器上编译Java程序。即使是这个独立的客户端代码-我也可以在这台Linux机器上编译。我应该让系统管理员查看gc4j配置吗?是的,我做了。它只输出/usr/bin/Java。然后我试着用Java-version获取版本。我编辑了我的答案,看一看,试试我写的命令,让我知道我试过了(删除:从末尾),但仍然是相同的错误。
  APP_HOME=/local/scripts/apps/bulkUpload;

CLASSPATH=.:$APP_HOME/lib/gf-client.jar:$APP_HOME/lib/zbl.jar:$APP_HOME/lib/log4j-   1.2.4.jar:$APP_HOME/lib/javaee.jar:$APP_HOME/lib/poi-3.8-beta5-20111217.jar:$APP_HOME/lib/poi-examples-3.8-beta5-20111217:$APP_HOME/lib/poi-excelant-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-schemas-3.8-beta5-20111217:$APP_HOME/lib/poi-scratchpad-3.8-beta5-20111217:$APP_HOME/lib/appserv-rt.jar:


 echo "CLASSPATH=$CLASSPATH";

 export APP_HOME;
 export CLASSPATH;

 cd $APP_HOME;

 #javac -d . ZblBulkUploadThread.java

 java -cp $CLASSPATH -Dzbl.properties=zbl-stage.properties    -Djava.naming.factory.initial=com.sun.enterprise.naming.SerialInitContextFactory com.cisco.zbl.controller.ZblBulkUploadThread
CLASSPATH=.:$APP_HOME/lib/gf-client.jar:$APP_HOME/lib/zbl.jar:$APP_HOME/lib/log4j-   1.2.4.jar:$APP_HOME/lib/javaee.jar:$APP_HOME/lib/poi-3.8-beta5-20111217.jar:$APP_HOME/lib/poi-examples-3.8-beta5-20111217:$APP_HOME/lib/poi-excelant-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-3.8-beta5-20111217:$APP_HOME/lib/poi-ooxml-schemas-3.8-beta5-20111217:$APP_HOME/lib/poi-scratchpad-3.8-beta5-20111217:$APP_HOME/lib/appserv-rt.jar