首页 文章

EAR中的依赖管理

提问于
浏览
1

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


|
| --- Web模块
| --- ConnectorFacade
| ---连接器
| ---实用程序模块
| --- BPEL模块

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

目前,在上述任何一个模块中都发生了任何简单的更改,我们需要在WebSphere应用服务器上进行整个部署,因为我们已经将所有模块归档到单个EAR中 .

我希望EAR应该与依赖模块分开,除了web模块,其他模块应该在EAR之外,这样每当连接器或任何其他模块模块发生任何变化时,我只会更新连接器jar并重新启动App服务器,它应该选择新的类它将避免我的部署过程,我可以在最短的时间内做好新的更改 .

让我知道管理依赖 jar 有很好的解决方案 .

3 回答

  • 1

    正如'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

  • 0

    Websphere Application Server的最终解决方案是使用OSGi应用程序 .

    Working with OSGi Applications (WAS 7.0)

    About OSGi Applications (WAS 8.0)

  • 0

    您可以使用共享库,但这是一种肮脏的方式 . 另一种模式是OSGI,但你应该调整你的所有逻辑,这是一个单独的心态 .

    我没有看到隔离模块构建的真正好处,只要你配置好你的构建工具,这将是几秒钟的事 .

相关问题