`
小峰子
  • 浏览: 105678 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

J2EE模块加载顺序问题

阅读更多

J2EE规范没有对EAR文件内的J2EE模块应该如何部署做出任何规定。特别地,J2EE规范没有明确规定部署模块的次序。如果一个模块中的某个组件要用到另一个待部署模块的组件,它可能会带来问题。
因此,必须注意大多数应用服务器以如下步骤部署EAR文件:
  EAR文件内的所有资源适配器作为基本连接器部署。如果存在多个资源适配器,则它们的部署次序就是它们在application.xml部署描述器中列出的次序。
部署所有EJB模块。由于EJB可能在初始化期间用到某些资源适配器,所以EJB的部署在资源适配器之后。如果存在多个EJB模块,它们的部署次序将是它们在application.xml中列出的次序。
部署所有Web应用模块。由于Web应用初始化期间可能用到资源适配器和EJB,所有Web应用在这两者之后部署。如果存在多个Web应用模块,它们部署次序就是它们在application.xml中列出的次序。 
例如:
<!DOCTYPE application (View Source for full doctype...)> 
<application>
<display-name>CMP2.0 Example</display-name> 
<description>TongWeb4.0 Example : CMP2.0 EJB Example</description> 
<module>
<ejb>ejbql801.jar</ejb> 
</module>
<module>
<web>
<web-uri>ejbql801.war</web-uri> 
<context-root>/ejbql801</context-root> 
</web>
</module>
</application>

war模块应放在最后加载。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics