您的位置:jsp学习站首页 >> JAVA类 >> JAVA基础 >> J2EE应用部署(二):实践篇

J2EE应用部署(二):实践篇 (2)

[ 来源:互网络 | 更新日期:2007-09-01 22:24:38 | 浏览次数:9884]
简介:部署者的责任之一是确保所有J2EE模块中包含的所有安全角色都有一个唯一的名字,而且对于应用整体来说具有实际意义。安全角色可以从J2EE模块级“拉出”到企业应用级,加入到标记。也就是说,如果某个J2EE模块中存在一个重复的安全角色值,该值可以删除,只需在企业应用级提供即可。
application.xml  

下面是一个EAR文件的例子,它包含一个EJB模块、一个Web应用模块,不包含依赖库: 
MyFirstEJB.jar MyFirstWeb.war META-INF application.xml  

保存在EAR文件中的J2EE模块不一定要在根目录之下。例如,假设一个EAR文件包含一个EJB模块、一个资源适配器包,它的结构可以如下: 
ejbs MySecondEJB.jar resources MyLegacyAdapter.rar META-INF application.xml  

最后,下面是一个包含许多组件和依赖库的EAR文件: 

ejbs MyThirdEJB.jar MyFourthEJB.jar resources MyLegacyAdapter.rar web MyWebApp1.war MyWebApp2.war lib Myxmlx.jar Mycommon.jar META-INF application.xml  

EAR文件可以用部署工具创建,或者也可以改用JDK提供的jar工具创建。创建步骤为: 

创建一个用来容纳EAR文件内容的临时目录。 
把所有J2EE模块放入临时目录,创建META-INF目录。 
在META-INF目录下创建application.xml部署描述器。 
完成上述步骤之后,进入临时目录,运行jar工具创建EAR文件。 

下面是一个运行jar工具的例子,它对前面例子进行打包: 
jar cvf MyApplication.ear ejbs resources web lib META-INF  

创建好EAR文件之后,我们就可以把J2EE应用部署到应用服务器上。 

1.3 EAR部署描述器

理想情况下,我们用图形界面的工具编写application.xml文件。然而,有时我们必须手工构造或维护application.xml文件,因此理解application.xml文件用到的标记很重要。 

application.xml部署描述器并不复杂,不需要很多标记就可以构造出一个合法的描述器。部署描述器的DTD定义的标记包括: 

所有合法的J2EE应用描述器必须包含如下DOCTYPE声明: 

<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 
1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd">  


配置一个简单的application.xml部署描述器只需如下几步: 
用标记声明一个企业应用。标记可以包含、和标记,供部署工具提供有关应用的描述信息使用。这些标记的内容和EJB、Web应用、资源适配器部署描述器内的同一标记的内容相同。 

企业应用内的每一个模块必须有一个相应的标记描述模块。EJB用标记描述,Web应用用标记描述,资源适配器用标记描述,应用客户端程序用标记描述。除了标记之外,其他标记的内容都是指定EAR文件内包含J2EE模块的文件的相对URI,该URI必须相对于EAR文件的根。 

如果企业应用包含一个Web应用J2EE模块,则必须提供一个标记和一个标记。标记是一个相对URI,指定EAR文件内包含J2EE模块的文件。这个URI和、、标记的URI同属一类。标记指定Web应用将在其下运行的上下文的名字。所有针对该Web应用内JSP页面和Servlet的请求都必须加上该上下文名字作为前缀。例如,如果部署Web应用时指定了: 

<context-root>web1</context-root>  

则所有对JSP页面和Servlet的请求必须是如下形式: 

http://主机:端口/web1/...... 

在EAR文件内封装的每一个Web应用都要有一个唯一的值,任何两个Web应用不能有相同的值。如果EAR文件只包含一
[1] [2] [3] [4] [5] [6]
Tags:关键字:部署 实践
责任编辑:glen