java - 如何使用命令行部署EJB 3.0?

标签 java command-line jboss ejb wildfly

我正在关注this JEE 教程的基础知识,该教程提供了创建最小 EJB 部署的说明。

我已完成教程中的步骤,但对以下命令行调用进行了更改

  • >设置 CLASSPATH=.;E:\wildfly-10.1.0\wildfly-10.1.0.Final\bin\client\jboss-client.jar; (从教程中的长列表更改)
  • >jar -cvf SimpleSessionApp.ear beans*.java (将文件扩展名从 .ejb3 更改为 .ear)
  • 复制 SimpleSessionApp.ear E:\wildfly-10.1.0\wildfly-10.1.0.Final\standalone\deployments (复制到 wildfly 部署目录)

我启动了服务器,没有收到任何错误。但是,我没有获得部署 bean 时服务器日志输出的一组标准名称。

我使用教程中的以下命令运行客户端应用程序

  • >java -D java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory -D java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces -D java.naming .provider.url=localhost client.SimpleSessionClient 现在是好人的时刻

我得到以下错误作为输出

Error: Could not find or load main class java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory

我知道该教程适用于旧版本的 Java 和 JBoss。但是,我修改了旧的引用以指向上面提到的新环境。所以我认为版本控制在这里不是问题?顺便说一句,我刚刚开始学习 EJB。任何见解都会很棒。

我的环境

  • Java 1.8.0.212
  • Wildfly 10.1.0.Final
  • 记事本

最佳答案

您应该查看引用文档 https://docs.wildfly.org/17/Developer_Guide.html#JNDI_Remote_Reference因为您似乎传递了错误的配置参数。

最终属性 env = new Properties(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory"); env.put(Context.PROVIDER_URL, "http-remoting://localhost:8080"); //仅当没有加载 ejb 客户端配置时才需要下面的属性(例如 //类路径中的 jboss-ejb-client.properties)并且上下文将用于查找 EJB env.put("jboss.naming.client.ejb.context", true); InitialContext RemoteContext = 新的InitialContext(env); RemoteCalculator ejb = (RemoteCalculator) remoteContext.lookup("wildfly-http-remoting-ejb/CalculatorBean!" + RemoteCalculator.class.getName());

关于java - 如何使用命令行部署EJB 3.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57061491/

相关文章:

java - 使用 Hibernate 标准进行分页

java - 多线程访问文件

c - 如何修复 "assignment makes integer without a cast"**更新**

jboss - (Keycloak) Freemarker Template 系统属性和环境变量

java - Web 服务依赖于另一个 Web 服务

java - Apache mina SocketAcceptor 与 java.net.Socket 通信

java - Spring Security 从 Controller 登录

Java非阻塞输入

python - 使用 argparse 传递以减号 (-) 开头的参数值

java - 在 JBoss 5.1 中设置 user.dir 系统属性