java - EAR 中的依赖关系管理

标签 java jakarta-ee websphere ear modularity

我们的项目中有以下模块化结构,


|
|--- 网页模块
|--- ConnectorFacade
|--- 连接器
|--- 实用模块
|--- BPEL 模块

还有其他模块也可以用于理解我提到的几个模块的问题。

目前,任何简单的更改都发生在上述模块中,我们需要执行以下操作 由于我们一直将所有模块归档在单个 EAR 中,因此整个部署都在 WebSphere 应用程序服务器上。

我希望 EAR 应该与依赖模块分开,这意味着除了 Web 模块之外,其他模块应该位于 EAR 之外,这样每当连接器或任何其他模块模块发生任何更改时,我只需更新连接器 jar 并重新启动应用程序服务器,它应该选择新的类,这样就可以避免我的部署过程,并且我可以在最短的时间内准备好新的更改。

让我知道是否有管理依赖 jar 的好解决方案。

最佳答案

正如“fnt”所提到的,OSGI 可能是您问题的解决方案。

您还可以使用远程 EJB。

单独部署的 jar 中的远程服务

    @Stateless
    @Remote(MyRemoteInterface.class)
    public class MyService implements MyRemoteService {
      // Some implementations
    }

共享API

    interface MyRemoteService {

    }

在 EAR 的某些模块中

    @Stateless
    public class MyBoundary {
      @EJB
      MyRemoteService service;

      // Stuff
    }

有关更多信息,请参阅here

关于java - EAR 中的依赖关系管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17887544/

相关文章:

java - ldap连接的java程序中出现NullPointerException

java - Glassfish 服务器和 Jersey 2 : why does glassfish provide its own jersey2 to application

java - 找不到 JSP 方法 : class java. lang.String

java - 如何将包含 Java 库的 IBM 类的 Eclipse 项目导出到可执行 JAR 中

java - 代码未将密码值粘贴到网页的密码字段中

java - 如何在Eclipse IDE中的Apache Tomcat服务器中部署创建的.jar文件?

java - JSP中page和this对象的区别

websphere - IBM Worklight - 可以将 Worklight 部署到现有的 WAS 服务器吗?

java - 在将Maven War部署到Websphere Portal时收到“不是servlet类”错误

java - SetBackgroundResource() 延迟?