您的位置:首页 > 编程语言 > Java开发

Spring+JCA(J2EE Connector Architecture)J2EE连接器架构 简单介绍

2012-08-23 09:14 302 查看
JCA:J2EE Connector Architecture :J2EE连接器架构

EIS:Enterprise Information System:企业级信息系统

ERP:Enterprise Resource Planning:企业资源规划

SCM:Supply Chain Management:供应链关系系统

TPM:Transaction Process Monitor:交易处理监控器

CCI:Common Client Interface:标准的通用客户机接口

SPI:Service provider interfaces:连接器提供者接口

简介

开发基于 Web 的应用程序时,您很可能会需要将这些应用程序与至少在一个企业信息系统(EIS)中可用的资源和数据集成起来,如企业资源规划(ERP)系统、供应链管理(SCM)系统或一个交易处理监控器(TPM)。这种集成是电子商务策略的本质:我们利用并转换现有的基础设施,将其与 Web 和其他开放技术联合起来以支持新的业务过程,如企业间(B2B)交易。

在 J2EE 连接器架构到来之前,将 J2EE 应用程序和 EIS 集成起来很复杂,并且问题重重,因为尚不存在关于此类集成的标准。每个 EIS 供应商都为该问题提供了自己的解决方案。单个的 EIS 供应商通常不支持所有 J2EE 应用服务器。这些情况致使编写与企业信息系统集成到一起的真正可移植的应用程序十分困难;因为要集成每个应用服务器和 EIS 就需要进行定制。

下图展示了 J2EE 应用程序和 EIS 集成的复杂度。



J2EE 连接器架构(JCA)解决了将 J2EE 应用服务器连接到 EIS 的这个问题。通过遵循 JCA 标准,EIS 供应商确保其 EIS 能与任何基于 Java 的应用服务器轻易地集成起来。这样,应用服务器供应商也只需要确保其产品允许 JCA 连接性,而不用针对市场上的每个 EIS 定制其产品。每个允许 JCA 的应用服务器都能与任何兼容 JCA 的 EIS 相集成。

下图显示了 JCA 是如何简化将多个应用服务器连接到单个 EIS 上或将单个应用服务器连接到多个 EIS 上的。



JCA 由三个主要元素组成:

系统契约
客户机 API
资源适配器模块

这些元素中的每一个元素都在 JCA 中发挥着特定的作用。我们将从一个高层次的视角分别介绍每个元素,然后再在后续章节中继续进行更为复杂的探讨。

系统契约 定义应用服务器和 EIS 间的连接。系统契约中的 EIS 端是由一个资源适配器 实现的,它是一个特定于 EIS 的系统级软件驱动程序。应用服务器和资源适配器依赖系统契约进行协作,以提供对 EIS 的安全的、健壮的、可伸缩的访问。

三种系统契约的定义如下所示:

连接管理 契约实现到 EIS 的物理连接并为应用服务器提供一种机制来集中控制这些连接。

事务管理 契约支持在事务上下文中对 EIS 进行访问。事务可以由应用服务器进行管理,并提供与除 EIS 外的其他资源进行协作的事务;它们也可以是 EIS 资源管理器的内部事务,在这种情况下不需要事务管理器。

安全性 契约支持对 EIS 的安全访问。

系统契约在每一端(应用服务器和资源适配器)如何 实现并不由 JCA 指定;它们可以根据供应商的意愿实现。

JCA 的第二个元素是客户机 API。该 API 可以特定于资源适配器,也可以是由 JCA 定义的标准通用客户机接口(CCI)。CCI 是供应商用来提供集成工具和框架的,这就使得开发人员能够更加容易地访问企业系统。推荐采取(不是强制)资源适配器利用 CCI 的方式。

资源适配器模块包含向应用程序提供 EIS 连接的所有必要元素。资源适配器模块包含下列组件:

实现资源适配器的 Java 类和接口
资源适配器所需的任何实用 Java 类
任何特定于 EIS 且依赖于平台的本地库
部署描述符

应用服务器利用和资源适配器一起提供的部署描述符 来将其配置到特定的操作环境中。

资源适配器模块的所有文件都被打包到一个资源适配器档案(RAR)文件中(使用 Java 档案 JAR 文件格式)。所有的 Java 类和接口都被打包到一个 JAR 文件中,该文件随后由 RAR 文件所包含。本地文件也打包到该 RAR 文件中。部署描述符名为 ra.xml,位于该 RAR 文件的 META-INF 文件夹中。

参考资料:

http://www.ibm.com/developerworks/cn/education/java/j-jca/section1.html

http://livejuns.iteye.com/blog/796049
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: