ejb-jar.xml中详解
1。<ejb-jar> 的ejb-jar元素是EJB部署描述符的根元素, 它包含一个可选的ejb-jar文件的描述,可选的显示名称,可选的小图标文件名 ,可选的大图标文件名 ,强制性结构信息包含的所有企业bean,可选的应用装配描述符,可选的名字和一个EJB-JAR的EJB客户端JAR文件 1.1 <description>一个简短的描述。</说明> 一个简短的描述。 1.2。<display-name>的名称</显示名称> 显示-name元素包含一个简短的名称,旨在显示 工具 1.3 <small-icon>雇员服务icon16x16.jpg </小图标> 小图标元素包含一个文件名 (16×16)包含一个小图标图像。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.4 <large-icon>雇员服务- icon32x32.jpg </大图标 ,大图标元素包含含有大(32×32)的图标图像文件的名称。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.5 <enterprise-beans> 企业豆类元素包含一个或多个企业Bean的声明。 1.5.1 <session> 会话元素声明一个会话bean。“宣言”包括了:1可选的描述 ;可选的显示名称,可选小图标文件名 ,可选的大图标文件名 ,1 名企业bean部署描述;会话Bean的该名本地和远程接口 ;会话执行 bean的类 ;会话Bean的状态管理类型;会话Bean的事务管理类型; 1 Bean的可选申报环境条目 ; 1 Bean的可选声明EJB引用 ; 1的可选的声明安全角色引用 ;和1可选的声明,资源工厂 bean的引用。“可选的”在某种意义上说,他们被省略时,如果他们所代表的名单是空的元素是可选的。 1.5.1.1 <description>简短描述</说明> 一个简短的描述。 1.5.1.2 <display-name>一个名称</显示名称> 显示-name元素包含一个简短的名称,目的是通过工具的显示。 1.5.1.3 <small-icon>雇员服务icon16x16.jpg </小图标> 小图标元素包含一个文件名 (16×16)包含一个小图标图像。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.5.1.4 <large-icon>雇员服务- icon32x32.jpg </大图标 ,大图标元素包含含有大(32×32)的图标图像文件的名称。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.5.1.5的<ejb-name> EmployeeService的</的ejb-name> ejb-name元素指定企业bean的名称。这名被分配在ejb-jar文件部署描述符来命名企业Bean的ejb-jar文件的生产者。之间在同一个ejb-jar文件的企业bean的名称必须是唯一的名称。企业bean代码不依赖于名称;因此得名打破企业Bean的功能,可以在应用程序组装过程中没有改变。有架构的ejb-name部署描述符和部署,将分配给企业bean的home的JNDI名称之间没有关系。该名称必须符合的NMTOKEN的词法规则。 1.5.1.6 <HOME> com.aardvark.payroll.PayrollHome </首页> home元素包含企业bean的home接口的完全限定名称。 1.5.1.7 <remote> com.wombat.empl.EmployeeService </远程> 远程元素包含企业bean的远程接口的完全限定名称。 1.5.1.8 <ejb-class> com.wombat.empl.EmployeeServiceBean </ EJB类 的ejb-class元素包含企业bean的类的完全限定名称。 1.5.1.9 <session-type>状态/的无国籍</会话类型 > 会话类型元素描述是否会话bean是有状态的会话,或无状态会话。会话类型的元素必须是以下两种之一:状态或无状态。 1.5.1.10 <transaction-type>豆/货柜</交易类型 交易类型元素必须是以下两种之一:Bean或容器。 1.5.1.11 <transaction-scope>本地|分布式</交易范围> 本次交易范围的元素指定企业Bean是否要求分布式事务,必须使用其是否可以使用本地事务优化方法。交易范围的元素必须是以下两种:本地分布式交易范围的元素是可选的。如果没有指定,容器必须承担,必须使用分布式事务。 1.5.1.12 <env-entry> 的env-entry元素包含企业bean的环境条目的声明。该声明包括一个可选的描述,环境条目的名称,和一个可选的值。 1.5.1.12.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.12.2 <env-entry-name> minAmount </ ENV-入门名称>, ENV入境-name元素包含企业bean的环境条目的名称。 1.5.1.12.3 <env-entry-type>的java.lang.String </ ENV-入门型> 的env-入门型元素包含环境入口值的完全限定的Java类型的企业预期Bean的代码。以下是ENV-入门型:java.lang.Boolean的,java.lang.String时,java.lang.Integer的法律价值,java.lang.Double和java.lang.Byte,java.lang.Short,JAVA 。lang.Long,和java.lang.Float的。 1.5.1.12.4 <env-entry-value> 100.00 </的ENV进入价值>, ENV进入价值元素包含企业bean的环境条目的值。 1.5.1.13 <ejb-ref> ejb-ref元素用于声明引用另一个企业Bean的home。“宣言”包括一个可选的描述; EJB引用名称引用的企业bean代码中使用引用的企业Bean的预期类型,预期家庭和被引用的企业bean的远程接口和一个可选的ejb-link信息。可选的ejb-link元素用于指定引用的企业bean。通常它被用于在ejb-jar文件包含一个组装应用。 1.5.1.13.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.13.2 <ejb-ref-name> EJB /薪资</的ejb-ref-名称> 的ejb-ref-name元素包含EJB引用的名称。EJB引用是在企业bean的环境中的一个条目。据建议,名称是“EJB /”前缀。 1.5.1.13.3 <ejb-ref-type>实体会议</的ejb-ref型> 的ejb-ref-type元素包含被引用的企业Bean的预期类型。的ejb-ref-type元素必须是下列之一:实体会议 1.5.1.13.4 <HOME> com.aardvark.payroll.PayrollHome </首页> home元素包含企业bean的home接口的完全限定名称。 1.5.1.13.5 <remote> com.wombat.empl.EmployeeService </远程> 远程元素包含企业bean的远程接口的完全限定名称。 1.5.1.13.6 <ejb-link> EmployeeRecord </的ejb-link > 的ejb-link元素是在ejb-ref元素用于指定EJB引用链接到另一个企业Bean的ejb-jar文件中。ejb-link元素的值必须是一个企业bean在同一个ejb-jar文件的EJB的名称,或在另一个ejb-jar文件在同一个J2EE应用程序单位。 1.5.1.14的<security-role-ref> 安全role-ref元素包含了一个企业Bean的代码中的安全角色引用的声明。声明包括一个可选的描述,在代码中使用的安全角色的名称,和一个可选的链接定义的安全角色。role-name元素的值必须的EJBContext.isCallerInRole(字串ROLENAME)方法的参数中使用的字符串。作用link元素的值必须是一个安全角色元素中定义的安全角色的名称。 1.5.1.14.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.14.2 <role-name>名称</角色名> 的role-name元素包含安全角色的名称。该名称必须符合的NMTOKEN的词法规则。 1.5.1.14.3 <role-link>名称</角色链接> 角色link元素是用来连接安全角色定义的安全角色。角色link元素必须包含一个安全角色元素中定义的安全角色的名称。 1.5.1.15 <security-identity> 安全identity元素指定呼叫者的安全标识是否是回车奖豆的方法执行,或是否要使用一个特定的身份运行。 1.5.1.15.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.15.2 <use-caller-identity> myRole的</使用呼叫者身份 使用caller-identity元素指定企业Bean的方法执行的安全标识使用呼叫者的安全标识。 1.5.1.15.3 <run-as-specified-identity> 运行指定的标识元素指定运行身份使用企业Bean的方法执行。 1.5.1.15.3.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.15.3.2 <role-name>名称</角色名> 的role-name元素包含安全角色的名称。该名称必须符合的NMTOKEN的词法规则。 1.5.1.16 <resource-ref> resource-ref元素包含企业Bean的引用外部资源的声明。它包括一个可选的描述,资源工厂引用名,资源工厂型企业bean代码期望的指示,和类型的身份验证(豆或容器)。 1.5.1.16.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.1.16.2 <res-ref-name>名称</ RES的ref-name> 的res-ref-name元素指定了一个资源工厂引用的名字。 1.5.1.16.3 <res-type>了javax.sql.DataSource </ RES型> 的res-type元素指定数据源类型。预计将实施的数据源的Java接口(或类)指定的类型。 1.5.1.16.4 <res-auth>应用/箱</ RES-AUTH 的res-auth的元素指定企业bean代码标志是否编程资源经理或容器是否将签署有关资源管理bean的代表。在后一种情况下,容器使用部署提供的信息。该元素的值必须是以下两种之一:应用程序或容器 1.5.1.17 <resource-env-ref> 的resource-env-ref元素包含企业bean的参考与资源相关的管理对象的声明企业bean的环境。它包括一个可选的描述,资源环境引用的名称,并预计回车奖bean代码的资源环境引用类型的籼稻。用于实体,消息驱动和会话的例子:JMS / StockQueue javax.jms.Queue 1.5.1.17.1 <description>一个简短的描述</描述> 1.5.1.17.2 <的resource-env-ref的 一个简短的描述。 名称> theName </资源ENV-REF-名称> 的resource-env-ref的名称元素指定资源环境引用的名称,它的价值是在企业bean代码中使用的环境条目的名称。 1.5.1.17。 3 <resource-env-ref-type> com.the.Type </的resource-env-ref的类型> 的resource-env-ref的类型元素指定资源环境引用的类型。 1.5.2 <entity> “实体元素声明一个实体bean。“宣言”包括了:1可选的描述;可选的显示名称;可选的小图标文件名;可选的大图标文件名;在部署描述符指定企业bean了;实体bean的家庭和远程接口的名称;实体bean的实现类;实体Bean的持久性管理的类型;实体Bean的主键类的名称;显示实体bean的重入; 1容器管理的字段的可选名单; 1的主键字段的可选规范; 1的可选的声明bean的环境条目;可选的一个Bean的EJB引用的声明;可选的安全角色引用的声明;和可选的bean的资源工厂引用声明。可选primkey场可能在描述实体的持久型集装箱。其他元素是可选的是“可选”,他们被忽略的感觉,如果他们所代表的名单是空的。必须至少有一个cmp-field元素中描述实体的持久型集装箱,并没有必须不存在的,如果是Bean的实体的持久型。 1.5.2.1 <description>简短描述</说明> 一个简短的描述。 1.5.2.2 <display-name>一个名称</显示名称> 显示-name元素包含一个简短的名称,目的是通过工具的显示。 1.5.2.3 <small-icon>雇员服务icon16x16.jpg </小图标> 小图标元素包含一个文件名 (16×16)包含一个小图标图像。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.5.2.4 <large-icon>雇员服务- icon32x32.jpg </大图标 ,大图标元素包含含有大(32×32)的图标图像文件的名称。该文件的名称是在ejb-jar文件的相对路径。图像必须是JPEG或GIF格式,文件名 后缀必须结束“。JPG”或“GIF”。可以使用工具的图标。 1.5.2.5的<ejb-name> EmployeeService的</的ejb-name> ejb-name元素指定企业bean的名称。这名被分配在ejb-jar文件部署描述符来命名企业Bean的ejb-jar文件的生产者。之间在同一个ejb-jar文件的企业bean的名称必须是唯一的名称。企业bean代码不依赖于名称;因此得名打破企业Bean的功能,可以在应用程序组装过程中没有改变。有架构的ejb-name部署描述符和部署,将分配给企业bean的home的JNDI名称之间没有关系。该名称必须符合的NMTOKEN的词法规则。 1.5.2.6 <HOME> com.aardvark.payroll.PayrollHome </首页> home元素包含企业bean的home接口的完全限定名称。 1.5.2.7 <remote> com.wombat.empl.EmployeeService </远程> 远程元素包含企业bean的远程接口的完全限定名称。 1.5.2.8 <ejb-class> com.wombat.empl.EmployeeServiceBean </ EJB类 的ejb-class元素包含企业bean的类的完全限定名称。 。1.5.2.9 <persistence-type>豆。|集装箱</持久型> 持久型元素指定实体Bean的持久性管理的类型。持久型元素必须是以下两种之一:Bean或容器。 1.5.2.10 <prim-key-class> com.wombat.empl.EmployeeID </类的prim-key-> 的prim-key-class元素包含一个实体Bean的主键类的完全限定名称。如果主键类的定义推迟到部署时,应指定的prim-key-class元素的java.lang.Object。 1.5.2.11 <reentrant>真/假</折返> 折返元素指定一个实体bean是否是折返或不。折返元素必须是以下两种之一:True或False | 2.X </ CMP版本1.5.2.12 <cmp-version> 1.x中 的cmp-version元素指定容器管理持久性实体bean的版本。以下是测试版本元素的合法值:1.x和2.x 2.x版本的测试版本元素的默认值是 1.5.2.13 <abstract-schema-name> OrderBean </抽象模式名> 的抽象模式-name元素指定一个测试版本2.x实体bean的抽象模式名 它是用来在EJB QL查询。例如,实体bean的抽象模式名可能是OrderBean的,如果它的实体bean类com.acme.commerce.OrderBean的。 1.5.2.14 <cmp-field> cmp-field元素描述了一个容器管理的字段。field元素包括一个可选字段描述,字段的名称。 1.5.2.14.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.14.2 <field-name>名字</字段名> 领域-name元素指定容器名称管理领域。该名称必须是一个企业bean类或父的公共领域。 1.5.2.15 <primkey-field> fieldName的</ primkey场> primkey-field元素指定容器管理持久性实体的主键字段的名称。的primkey字段必须是在cmp-field元素宣布领域之一,字段类型必须是主键类型相同。primkey-field元素不使用,如果主键映射到多个容器管理的字段(即最关键的是一个复合键)。在这种情况下,主键类的字段必须是公共的,其名称必须符合实体bean类中的字段名称,包括关键。 1.5.2.16 <transaction-scope>本地|分布式</交易范围> 本次交易范围的元素指定企业Bean是否要求分布式事务,必须使用其是否可以使用本地事务优化方法。交易范围的元素必须是以下两种:本地分布式交易范围的元素是可选的。如果没有指定,容器必须承担,必须使用分布式事务。 1.5.2.17 <env-entry> 的env-entry元素包含企业bean的环境条目的声明。该声明包括一个可选的描述,环境条目的名称,和一个可选的值。 1.5.2.17.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.17.2 <env-entry-name> minAmount </ ENV-入门名称>, ENV入境-name元素包含企业bean的环境条目的名称。 1.5.2.17.3 <env-entry-type>的java.lang.String </ ENV-入门型> 的env-入门型元素包含环境入口值的完全限定的Java类型的企业预期Bean的代码。以下是ENV-入门型:java.lang.Boolean的,java.lang.String时,java.lang.Integer的法律价值,java.lang.Double和java.lang.Byte,java.lang.Short,JAVA 。lang.Long,和java.lang.Float的。 1.5.2.17.4 <env-entry-value> 100.00 </的ENV进入价值>, ENV进入价值元素包含企业bean的环境条目的值。 1.5.2.18 <ejb-ref> ejb-ref元素用于声明引用另一个企业Bean的home。“宣言”包括一个可选的描述; EJB引用名称引用的企业bean代码中使用引用的企业Bean的预期类型,预期家庭和被引用的企业bean的远程接口和一个可选的ejb-link信息。可选的ejb-link元素用于指定引用的企业bean。通常它被用于在ejb-jar文件包含一个组装应用。 1.5.2.18.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.18.2 <ejb-ref-name> EJB /薪资</的ejb-ref-名称> 的ejb-ref-name元素包含EJB引用的名称。EJB引用是在企业bean的环境中的一个条目。据建议,名称是“EJB /”前缀。 1.5.2.18.3 <ejb-ref-type>实体会议</的ejb-ref型> 的ejb-ref-type元素包含被引用的企业Bean的预期类型。的ejb-ref-type元素必须是下列之一:实体会议 1.5.2.18.4 <HOME> com.aardvark.payroll.PayrollHome </首页> home元素包含企业bean的home接口的完全限定名称。 1.5.2.18.5 <remote> com.wombat.empl.EmployeeService </远程> 远程元素包含企业bean的远程接口的完全限定名称。 1.5.2.18.6 <ejb-link> EmployeeRecord </的ejb-link > 的ejb-link元素是在ejb-ref元素用于指定EJB引用链接到另一个企业Bean的ejb-jar文件中。ejb-link元素的值必须是一个企业bean在同一个ejb-jar文件的EJB的名称,或在另一个ejb-jar文件在同一个J2EE应用程序单位。 1.5.2.19的<security-role-ref> 安全role-ref元素包含了一个企业Bean的代码中的安全角色引用的声明。声明包括一个可选的描述,在代码中使用的安全角色的名称,和一个可选的链接定义的安全角色。role-name元素的值必须的EJBContext.isCallerInRole(字串ROLENAME)方法的参数中使用的字符串。作用link元素的值必须是一个安全角色元素中定义的安全角色的名称。 1.5.2.19.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.19.2 <role-name>名称</角色名> 的role-name元素包含安全角色的名称。该名称必须符合的NMTOKEN的词法规则。 1.5.2.19.3 <role-link>名称</角色链接> 角色link元素是用来连接安全角色定义的安全角色。角色link元素必须包含一个安全角色元素中定义的安全角色的名称。 1.5.2.20 <security-identity> 安全identity元素指定呼叫者的安全标识是否是回车奖豆的方法执行,或是否要使用一个特定的身份运行。 1.5.2.20.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.20.2 <use-caller-identity> myRole的</使用呼叫者身份 使用caller-identity元素指定企业Bean的方法执行的安全标识使用呼叫者的安全标识。 1.5.2.20.3 <run-as-specified-identity> 运行指定的标识元素指定运行身份使用企业Bean的方法执行。 1.5.2.20.3.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.20.3.2 <role-name>名称</角色名> 的role-name元素包含安全角色的名称。该名称必须符合的NMTOKEN的词法规则。 1.5.2.21 <resource-ref> resource-ref元素包含企业Bean的引用外部资源的声明。它包括一个可选的描述,资源工厂引用名,资源工厂型企业bean代码期望的指示,和类型的身份验证(豆或容器)。 1.5.2.21.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.21.2 <res-ref-name>名称</ RES的ref-name> 的res-ref-name元素指定了一个资源工厂引用的名字。 1.5.2.21.3 <res-type>了javax.sql.DataSource </ RES型> 的res-type元素指定数据源类型。预计将实施的数据源的Java接口(或类)指定的类型。 1.5.2.21.4 <res-auth>应用/箱</ RES-AUTH 的res-auth的元素指定企业bean代码标志是否编程资源经理或容器是否将签署有关资源管理bean的代表。在后一种情况下,容器使用部署提供的信息。该元素的值必须是以下两种之一:应用程序或容器 1.5.2.22 <resource-env-ref> 的resource-env-ref元素包含企业Bean的参照企业bean的环境与资源相关的管理对象的声明。它包括一个可选的描述,资源环境引用的名称,并预计回车奖bean代码的资源环境引用类型的籼稻。适用于:实体,消息驱动和会话的例子:JMS / StockQueue javax.jms.Queue 1.5.2.22.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.22.2 <resource-env-ref-name> theName </ 的resource-env-ref的名称元素的resource-env-ref的名称> 指定资源环境引用的名称,它的价值是环境条目的名称用于企业bean代码。 1.5.2.22.3 <resource-env-ref-type> com.the.Type </的resource-env-ref的类型> 的resource-env-ref的类型元素指定资源环境引用的类型。 1.5.2.23 <query> 查询元素被用来指定一个finder或选择查询。它包含查询的一个可选的描述,finder或select方法,它是用来规范和EJB QL查询字符串或查询规范,它定义了查询。 1.5.2.23.1 <description>一个简短的描述</说明> 一个简短的描述。 1.5.2.23.2 <query-method> 查询方法元素用于指定取景器或选择查询方法。方法-name元素中指定一个finder或select方法在实体bean的实现类的名称。每个方法的参数必须被定义为一个查询方法,在method-params元素。用在查询的例子:方法发现大订单数量的WHERE ejbFindLargeOrders> 1000 1.5.2.23.2.1方法名nameOfMethod </方法名> 方法-name元素包含了一个企业bean方法的名称,或星号(*)字符。使用星号时,该元素表示一个企业bean的remote和home接口的所有方法。 1.5.2.23.2.2 <method-params> method-params元素包含一个完全合格的Java方法的参数类型名称列表。 1.5.2.23.2.2.1 <method-param>的int [] </方法参数> 的方法-param元素包含完全限定的Java方法参数的类型名称。 |