【问题标题】:Run Enterprise Application Client outside Netbeans在 Netbeans 之外运行企业应用程序客户端
【发布时间】:2016-09-30 13:54:39
【问题描述】:

我已按照此网页上的教程进行操作:https://netbeans.org/kb/docs/javaee/entappclient.html

我想在 Netbeans 之外运行企业应用程序客户端。请注意,企业应用程序客户端与 Web 客户端不同,即它是应用程序客户端。

我已尝试执行以下命令:

设置类路径=C:\GenieDevelopment\NetBeansProjects\RemoteInterface\EJBRemote\dist\EJBRmote.jar cd C:\Program Files\glassfish-4.0\glassfish\bin Appclient -client C:\NetBeansProjects\RemoteInterface\ClientTest\dist\ClientTest.jar

我得到的错误是:

Oct 04, 2016 7:59:32 PM org.glassfish.apf.impl.DefaultErrorHandler error
SEVERE: Class [ Ltest/TestEJBRemote; ] not found. Error while loading [ class cl
ienttest.Main ]
Exception in thread "main" java.lang.NoClassDefFoundError: test/TestEJBRemote
        at clienttest.Main.main(Main.java:24)
Caused by: java.lang.ClassNotFoundException: test.TestEJBRemote
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.glassfish.appclient.client.acc.ACCClassLoader.findClass(ACCClassL
oader.java:237)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 1 more

有什么问题?远程接口在类路径中。

【问题讨论】:

  • @Mr_Thorynque,你能指定正确的命令吗?
  • 这不对。 entappclient.Main 是正确的(假设这是应用程序的主类)。
  • 你的项目生成的jar文件entappclient.jar叫什么名字?
  • @Mr_Thorynque,是的。
  • 可能是 jndi 问题,您能否发布您的 ejb / jndi 查找的初始化代码。您的示例是将客户端放在 glassfish 服务器中,因此 ejb 在本地解析。

标签: java jakarta-ee


【解决方案1】:

类路径不考虑您列出的目录中的 JAR 文件。它将使用类路径中明确给出的 JAR 文件,以及您列出的目录中的 .class 文件;但不是目录中的 JAR 文件。如果你想让它在一个目录中包含 JAR 文件,你需要使用通配符:

java -cp "EntAppClient.jar;C:\jardirectory\*" ...

这将包括该目录中的所有文件,如果这些文件是 JAR,它将全部拾取。

如果您希望能够构建应用程序,然后在 IDE 之外部署和运行它们,我强烈建议您使用 Maven 来控制您的依赖项,并允许您在一个地方构建一个包含所有依赖项的胖 JAR。以后你会省去很多麻烦。

【讨论】:

  • 你知道我可以运行的命令来运行这个:“Hello World”类型的项目。我无法相信来自 .NET 背景的难度有多大。谢谢。
  • 谢谢。但是,您能否指定完整的命令(我已在 OP 中指定了路径)?
【解决方案2】:

您需要在诸如 tomcat 或 glassfish 甚至 Google AppEngine 之类的网络服务器中运行 J2EE 应用程序。通常您会生成上传到 Web 服务器的 .WAR 文件。在 tomcat 的情况下,您打开 http://localhost:8080/manager/html 然后上传 .war 文件,然后 http://localhost:8080/myapp 将显示您的 webapp。

【讨论】:

  • 企业应用客户端怎么样?
猜你喜欢
  • 2011-05-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多