GlassFish启动Java SE客户端 - 没有初始上下文异常

时间:2010-04-30 09:57:12

标签: java client glassfish

我开发了一个java se客户端,它在glassfish服务器v3上调用一些会话bean。我像这样连接到bean远程接口。

context = new InitialContext();
em = (ICrudService) context.lookup("java:global/BackITServer/CrudServiceImpl");

从eclipse(构建路径上的gf-client)中可以正常工作。当我将项目导出为可运行的jar并使用

在控制台上调用它时
java -jar BackItClient.jar

我收到NoInitialContextException。

javax.naming.NoInitialContextException: Need to specify class name 
in enviroment or system property, or as an applet parameter, or in an application resource file

MMMM。我非常感谢一些帮助。

谢谢

问候马塞尔

PS:我真的需要将gf-client引用的所有罐子装到我的罐子里吗?

2 个答案:

答案 0 :(得分:0)

当我在glassfish的modules目录中执行以下操作时,它可以工作:

java -cp gf-client.jar;c:/users/marcel/desktop/backITClient.jar gui.MainController

BUT

如果我向上移动一个目录并执行以下操作:

java -cp /modules/gf-client.jar;c:/users/marcel/desktop/backITClient.jar gui.MainController

我再次收到NoInitialContextException

此外,客户端中的所有相对路径都不再起作用(i18n xml文件/图片),因为它在模块目录中查找。 ???

我知道应该“首先学习交易,然后下载IDE”,不过我希望有人能给我一个提示。

由于

马塞尔

答案 1 :(得分:0)

好的,我解决了。我不得不重新安装glassfish。它是在程序文件目录中,java不喜欢的文件夹。

java -cp c:/glassfishv3/glassfish/modules/gf-client.jar;backITClient.jar gui.MainController

问候

马塞尔