J2EE应用部署(二):实践篇 (5)
[ 来源:互网络 | 更新日期:2007-09-01 22:24:38 | 浏览次数:9884]
简介:部署者的责任之一是确保所有J2EE模块中包含的所有安全角色都有一个唯一的名字,而且对于应用整体来说具有实际意义。安全角色可以从J2EE模块级“拉出”到企业应用级,加入到标记。也就是说,如果某个J2EE模块中存在一个重复的安全角色值,该值可以删除,只需在企业应用级提供即可。
</module>
</application>
--------------------------------------------------------------------------------
编写好application.xml部署描述器之后,企业应用的目录将包括:
MyEnterpriseBean.jar MyWebApp.war META-INF application.xml
用jar工具创建名为MyEnterprise.ear的EAR文件,控制台命令如下:
jar cvf MyEnterprise.ear MyEnterpriseBean.jar MyWebApp.war META-INF
值得一提的是,如果使用J2EE参考实现(Reference Implementation)提供的deploytool,我们不必手工编写ejb-jar.xml、web.xml和application.xml部署描述器,这些文件由deploytool自动生成。在本例的企业应用中,application.xml就是自动生成的。
2.3 部署和运行应用
构造好EAR文件之后,接下来该部署它了。记住,具体的部署操作和平台有关,不同的供应商提供了不同的部署工具。例如,J2EE的deploytool能够把企业应用部署到J2EE参考实现上。
成功地部署好企业应用之后,接下来就可以调用Servlet了。由于该企业应用上下文的根是/web,Servlet作为它的一部分调用。为此,我们在浏览器中输入的地址应该是如下形式:
http://主机:端口/web/myenterpriseservlet/
三、可选的应用部署描述器标记
在某些情形下,有两个可选的部署描述器标记可供使用,它们是和标记。
是的子标记,它的值是一个为模块提供的从EAR文件的根开始的URI,指向另一个部署描述器文件。这个文件的命名不必和它在J2EE模块里面时一样。例如,所有EJB模块的部署描述器必须命名为ejb-jar.xml,但如果标记的值指向一个EJB模块的可选部署描述器,文件就可以取ejb-jar.xml以外的名字。
标记中指定的部署描述器文件将覆盖J2EE模块里面包含的描述器,。标记可以用来引用部署描述器的外部版本,当部署者想要使用的部署描述器与包含在EJB、Web应用、资源适配器或者应用客户端模块内的描述器不同时,就可以使用这个标记。如果不指定标记的值,部署工具将使用EAR文件里面JAR、WAR或RAR文件中提供的值。例如,要为Web应用指定一个外部的可选部署描述器,假设该描述器在EAR文件的根下面,我们指定:
quote:
--------------------------------------------------------------------------------
<module>
<web>
<web-uri>web.war</web-uri>
<context-root>web</context-root>
</web>
<alt-dd>external-web.xml</alt-dd>
</module>
--------------------------------------------------------------------------------
标记用来指定应用级的安全角色,这个安全角色将用于EAR文件包含的所有J2EE模块。如果EAR文件包含多个EJB模块或多个Web应用模块,这些模块都可以有自己的安全角色定义。部署者的责任之一是确保所有J2EE模块中包含的所有安全角色都有一个唯一的名字,而且对于应用整体来说


您的位置:
