利用J2EE Connector Architecture - 编程入门网
事务控制委托给应用程序服务器,使应用程序开发人员能够专注于开发业务逻辑,同时仍可以根据部署决定应用程序的事务特性。CMT 的事务控制的关键是 EJB 事务属性,下面将讨论该属性。
事务属性 事务属性在 EJB 部署描述符(ejb-jar.xml 文件)中设置,事务属性是控制属性,在控制情形下当调用 Bean 方法时启动全局事务。此事务属性显示在“container-transaction”部分,并使用“trans-attribute”标记指定。例如,以下 XML 定义 CTGTesterCCI Bean 上的远程 execute() 方法具有“Required”事务属性:
图 7 显示了如何使用 IBM Rational® Application Developer 中的 EJB 部署描述符编辑器定义这些设置的情况。 图 7. Rational Application Developer 中的事务属性 事务属性的可能值及其描述在表 1 中列出: 表 1. EJB 事务属性
利用J2EE Connector Architecture(6)时间:2011-03-11 Phil Wakelin本地事务容器 EJB 2.0 规范没有指定如果在没有全局事务下运行方法时容器的行为。Servlet、使用 Bean 管理的事务的会话 Bean 和一些其他情况会发生这种现象。在该种情况下,应用程序被请求在“未指定的事务”上下文中执行。为了实现一致性和可移植性,WebSphere Application Server 使用本地事务容器 (LTC) 策略执行该未指定的事务上下文。此 LTC 策略是一种有效的划定范围的方法,Web 和 EJB 容器可以使用此方法划分在全局事务外分配的工作的开始和结束。在该 LTC 内对资源管理器的所有访问都通过资源管理器本地事务 (RMLT),在 LTC 结束时必须解决这种事务。没有办法以编程方法与 LTC 范围进行交互;并且 LPC 范围影响 J2EE 应用程序的方法由三个扩展的部署描述符 (XDD) 控制,这三个部署描述符可以在 J2EE 组件部署时设置,如下所示: Boundary——它可以有值 BeanMethod(缺省)或 ActivitySession。ActivitySession 是对仅仅在 WebSphere Application Server Enterprise Version 5 中适用的 EJB 容器的扩展。它在基于资源管理器的本地事务的边界方法之外提供了一个扩展的工作单元范围。(有关详细信息,请参见 Transactional services in WebSphere Application Server Enterprise V5, REDP3759。) Resolver——这个可以有值 ContainerAtBoundary 或 Application(缺省)。当在全局事务上下文(例如带有 Never 事务属性)外面的 EJB 容器发出 ECI 请求时,如果 Resolver 属性被设置为 Application,那么 ECI 调用类型是非扩展的。相 |
||||||||||||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |