我是Java EE的新手,我已经实现了一个带有远程接口的简单EJB模块,我希望在Wildfly 10上部署它。在EJB模块的pom.xml
我注册了{{ 3}}生成:
ProcessApplicationEJBs-1.0-client.jar
ProcessApplicationEJBs-1.0.jar
在Wildfly-Server上还有其他已部署的应用程序,应该使用此ejb。对我来说重要的是,这些应用程序使用客户端类(隐藏完整的实现)。我的问题是:
ProcessApplicationEJBs-1.0-client.jar
?我的计划是将它注册为Wildfly的新模块。是吗?ProcessApplicationEJBs-1.0.jar
。作为模块还是在普通部署文件夹中?我不希望其他已部署的应用程序可以看到具体的实现,但服务器将需要具体的实现来提供EJB的服务。我在这里有误会吗?什么是以干净的方式使其工作的常用方法?我非常感谢你的帮助!
答案 0 :(得分:1)
您可以选择为WildFly创建新模块,并在应用程序中添加依赖项。 或者为项目添加maven依赖项,以便客户端将* -client.jar包含在要一起部署的其他应用程序中。
模块的好处是类加载,如果使用本地调用(通过引用调用),如果由于不同的类加载器共享-client.jar中的类,则第二个选项可能会失败。 将其添加到部署中的好处是您可以在不重新启动服务器或创建新模块的情况下更改界面。