第8章应用CTG实现J2EE应用与CICS的互连课件

上传人:94****0 文档编号:242548127 上传时间:2024-08-27 格式:PPT 页数:24 大小:260.27KB
返回 下载 相关 举报
第8章应用CTG实现J2EE应用与CICS的互连课件_第1页
第1页 / 共24页
第8章应用CTG实现J2EE应用与CICS的互连课件_第2页
第2页 / 共24页
第8章应用CTG实现J2EE应用与CICS的互连课件_第3页
第3页 / 共24页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,*,第8章应用CTG实现J2EE应用与CICS的互连,*,大型主机应用上的开放系统和中间件,第8章应用CTG实现J2EE应用与CICS的互连,大型主机应用上的开放系统和中间件第8章应用CTG实现J,1,第,8,章 应用,CTG,实现,J2EE,应用与,CICS,的互连,第8章应用CTG实现J2EE应用与CICS的互连,第8章 应用CTG实现J2EE应用与CICS的互连第8章应用,2,8.1,为什么要使用,CTG,CICS Transaction Gateway,(简称,CTG,)相比于,CICS Web Support,的,IP,直连方式,提供了,EIS,适配器机制,使得不同平台上的应用可以通过适配器彼此之间进行通信。,适配器可以做不同应用间的数据转换,这就比,IP,直连的方式提供了更大的灵活性。,适配器的使用可以最大限度地屏蔽掉不同应用之间通讯接口的差异,用户不需要像,CICS Web Support,那样需要自己来处理通讯间的请求,,CWS,中用户必须在主机端的应用中加上对协议请求的处理。,应用,CTG,提供的,EIS,适配器和,JCA,架构,用户可以在不对已有系统做任何改动的情况下,实现,J2EE,应用与,CICS,应用的互操作。,第8章应用CTG实现J2EE应用与CICS的互连,8.1 为什么要使用CTGCICS Transaction,3,8.2 CICS Transaction Gateway,中的基本组件,CICS Transaction Gateway,是一组客户端和服务端的软件,,Java,应用程序可以通过,CTG,对远端的,CICS,应用进行调用。,Java,应用程序可以是普通的,Java,应用、,Applet,、或者是,J2EE,的应用。,CICS Transaction Gateway,主要包含以下组件:,1.Gateway,守护程序(,Gateway Daemon,),Gateway,守护程序是,CTG,中一个长时间运行的进程,它负责在指定的,TCP/IP,的端口监听,Java,端的应用(比如,J2EE,应用)对,CTG,的请求。,CTG,支持四种不同的,CTG,网络协议(,TCP,,,SSL,,,HTTP,和,HTTPS,)。,2.,客户机守护程序(,Client Daemon,),客户机守护程序是,CTG,运行在分布式平台上的组件,它提供了分布式平台上的客户端到,CICS,服务器的连接。在分布式平台上它支持如下几种方式的连接:,(,1,),APPC,连接(,SNA,)提供了从分布式平台客户端到所有平台上的,CICS,服务器的连接;,(,2,),TCP62,连接(,LU6.2/IP,)提供了分布式平台客户端到如下平台的,CICS,服务器的连接:,CICS/ESA V4.1,、,CICS TS V1.2(OS/390),、,CICS TS V1.3,(,OS/390,)、,CICS TS,(,z/OS V2,);,(,3,),TCP/IP,连接提供了分布式平台的客户端到如下,CICS,服务器的连接:,CICS TS,(,z/OS v2.2,)、,CICS TS (VSE/ESA V1.1.1),、,TXSeries CICS,(,AIX,,,Sun Solaris,,,Windows NT,,,HP-UX,)、,CICS TS OS/2,。,第8章应用CTG实现J2EE应用与CICS的互连,8.2 CICS Transaction Gateway中的,4,3.,配置工具,CTG,提供了一个配置工具(可以运行在任何分布式平台上)用于对,Gateway,守护程序和客户端守护程序进行配置,这些配置信息被存放在,ctg.ini,文件中。下图,8-1,为配置工具的,Java GUI,操作界面:,4.Java,类库,应用程序使用的,Java,类,被用来调用连结的,CICS,服务器上的服务。,图,8-1,:,CTG,配置工具界面,第8章应用CTG实现J2EE应用与CICS的互连,3.配置工具图8-1:CTG配置工具界面 第8章应用CTG,5,8.3 CICS Transaction Gateway,接口,CICS Transaction Gateway,主要提供两种编程接口的支持,,External Call Interface,(,ECI,)和,External Presentation Interface,(,EPI,)。,ECI,提供到基于,COMMAREA,的,CICS,程序的调用接口,,EPI,则提供了调用基于,3270,的,CICS,程序的,API,。,第8章应用CTG实现J2EE应用与CICS的互连,8.3 CICS Transaction Gateway接口,6,8.3.1 External Call Interface,ECI,接口主要用来调用基于,COMMAREA,的,CICS,服务器上的应用程序。,COMMAREA,是作为一个缓冲区用来在客户端和,CICS,服务器之间传递数据。,对于,CICS Server,来讲,ECI,客户端的请求调用可以看作是,CICS,中分布式程序的调用(,DPL,)。,ECI,的调用是现在绝大多数,CTG,应用所采纳的方式,因为它可以直接访问,CICS,中应用程序的接口,相对来说实现方式较为简便,便于维护。,本章基于,JCA,架构的应用实现就是基于,ECI,的调用实现。,ECI,的请求调用主要可以用如下两种,Java,接口实现:,1.ECIRequest Java Class,。它是,CTG,提供的基础类库,实现了直接通过,ECI,调用的简单接口,用来调用基于,COMMAREA,的,CICS,的应用程序。,第8章应用CTG实现J2EE应用与CICS的互连,8.3.1 External Call InterfaceE,7,2.Common Client Interface(CCI),。它是,J2EE Connector Architecture,中提供的符合,J2EE,标准的接口。,CCI,中提供了一组标准的,Java,类,用于,J2EE,到各种,EIS,系统的连接,包括,CICS,。,Java,应用程序通过,CCI,接口同,ECI,适配器进行通信,由,ECI,适配器去调用,CICS,服务器中的应用程序。,JCA,中,CCI,的调用示意图如下图,8-2,所示:,第8章应用CTG实现J2EE应用与CICS的互连,2.Common Client Interface(CCI),8,8.3.2 External Presentation Interface,EPI,主要用来调用基于,3270,的,Transaction,。,3270,的终端显示层逻辑安装在,CICS,中(例如,MAPSET,),,EPI,的请求使得,CICS,将此请求视为对终端的操作请求,就像在执行基于,MAPSET,的,CICS,应用一样。,由于,EPI,的请求是基于,3270,终端的(表现层逻辑),构建起来较为复杂,而且由于,EPI,是完全基于表现层的调用,如果表现层的逻辑稍加改动,比如说改变一下跳转的页面,或者屏幕的操作方式有些改动,就不得不重新改动,Java,的代码,维护起来不是十分的方便。,现在通常都是将核心的实现业务流程的程序同表现层分离出来(如果先前它们是混杂在一起的),再通过,ECI,的方式调用。,第8章应用CTG实现J2EE应用与CICS的互连,8.3.2 External Presentation In,9,EPI,请求主要可以采用如下四种,Java,接口实现:,1.EPIRequest Java,类。,CTG,产品自带的一组,Java,类的接口,用来调用基于,3270,的,CICS Transaction,。由于它是较为底层的接口,现在已经不常使用。,2.EPI,支持类。提供调用,3270,应用的高级接口,它提供了一些模拟,3270,终端操作的一些类,例如,,AID,键,,MAP,中的域数据,屏幕操作,,MAP,等。调用这些类其实就在模拟,3270,终端的操作动作,比如按什么键,输入什么数据之类,它会返回,3270,的响应。由于实现复杂,现在也不经常使用。,3.EPI Bean,。基于,EPI,支持类和,Java Bean,的开发环境。可以通过可视化的图形界面工具来开发,EPI,应用。,4.CCI,接口。类似,ECI,中的,CCI,接口的功能,它同,EPI,适配器进行通讯,通过,EPI,适配器同,CICS,中的,3270 Transaction,应用进行通信。,第8章应用CTG实现J2EE应用与CICS的互连,EPI请求主要可以采用如下四种Java接口实现:第8章应用C,10,8.4 TCP/IP,到,CICS,的连接,8.4.1 TCP/IP,在,CICS,中的定义,针对于,ECI,,,TCPIPSERVICE,在,CICS,中的定义,对比于,CWS,中,TCPIPSERVICE,的定义,这里的,PROtocol,为,ECI,,,Transaction,为,CIEP,,它负责处理,ECI,的请求。,TCPIPSERVICE,的定义如下图,8-3,所示:,图,8-3,:,ECI TCPIPSERVICE,的定义,第8章应用CTG实现J2EE应用与CICS的互连,8.4 TCP/IP到CICS的连接 8.4.1 TCP/,11,8.4.2 TCP/IP,在,CTG,中的定义,我们使用,CTG,配置工具来定义,TCP/IP,通讯,配置工具会将配置信息存放到,ctg.ini,文件中。,它主要记录三种信息:,Gateway Daemon,,,Client Daemon,和,Client Daemon,中,CICS Server,的配置信息。,Gateway daemon,的配置信息如下,其中,2006,为,Gateway Daemon,监听,TCP/IP,请求的端口。,第8章应用CTG实现J2EE应用与CICS的互连,8.4.2 TCP/IP在CTG中的定义我们使用CTG配置工,12,Client Daemon,的配置信息如下:,Client Daemon,中,CICS Server,的配置信息如下,这里指定了,Client Daemon,连接,CICS Server,的方式为,TCPIP,,,30084,为,CICS Server,中的,TCPIPSERVICE,定义的端口。,第8章应用CTG实现J2EE应用与CICS的互连,Client Daemon的配置信息如下:第8章应用CTG实,13,8.5,应用,JCA,构建,J2EE,应用与,CICS,应用之间的连接,8.5.1,方案一:,J2EE,连接架构,(JCA),的,CCI,接口,JCA,定义了一个标准的体系架构,用来连结,J2EE,平台和异构的企业信息系统如,CICS,。,在最新的,CICS Transaction Gateway,中提供了,JCA,的支持,从而允许,CICS,久经考验的服务质量可以被,WebSphere Application Server,中运行的,J2EE,应用程序发掘使用。,JCA,中应用资源适配器来同,EIS,系统进行通讯,对于每一种,EIS,系统都配有特定的资源适配器,例如,CICS,的,ECI,资源适配器。,所有的资源适配器提供了如下通用接口:,1.,通用的,API,使得,Java,组件同适配器进行通讯,这个,API,被称作,Common Client Interface,(,CCI,);,2.,一组系统规约,应用服务器可以使用其来管理与资源适配器的交互。,第8章应用CTG实现J2EE应用与CICS的互连,8.5 应用JCA构建J2EE应用与CICS应用之间的连接,14,利用,CCI,接口与,JCA,资源适配器通讯的示意图如下图,8-4,所示:,图,8-4,:利用,CCI,接口与,JCA,资源适配器通讯,第8章应用CTG实现J2EE应用与CICS的互连,利用CCI接口与JCA资源适配器通讯的示意图如下图8-4所示,15,下图,8-5,给出了利用,CCI,接口同适配器的交互图,这里需要指定连接信息和交互的数据信息。,图,8-5,:,CCI,的调用模式,第8章应用CTG实现J2EE应用与CICS的互连,下图8-5给出了利用CCI接口同适配器的交互图,这里需要指定,16,8.5.2,方案二:,Web,服务调用框架,(WSIF),Web,服务调用框架(,WSIF,)提供了一组,Java API,用来动态地调用,Web,服务。,JCA,中可以用,WSDL,文件描述,ECI,资源适配器提供的服务,这里包括用,XML,描述,COMMAREA,的数据结构、服务端的地址、服务的操作(请求与响应的消息)。,前端的,J2EE,应用组件利用,WSIF,来调用,ECI,适配器提供的服务,而完全不需要知道,CICS,中应用程序的数据类型、运行环境等,这对于前端的,J2EE,应用访问来说是松耦合的。,上面我们讲到了,CCI,,,CCI,也是用来同资源适配器进行交互的接口,但是,CCI,与资源适配器是紧耦合的,也就是说,J2EE,组件利用,CCI,同资源适配器进行交互的时候,需要指定适配器所有的相关信息。,例如,适配器所要调用的,CICS,服务器的地址、端口、,CICS,的,USER ID,、,Code Page,、,CICS,应用的程序名称、,COMMAREA,的长度等。,对于一个纯,J2EE,的应用来说,这些,EIS,内部接口的信息是不应该暴露出来的,当然我们也可以通过构建一系列的类来封装这些信息,但这终归不是一个好的设计模式。,而,JCA,中的,WSIF,架构对,CCI,的接口加以了封装和改进,使得适配器的接口以,WSDL,文件的形式暴露给前端的,J2EE,组件,这样适配器的接口对前端的,J2EE,应用来说就完全透明了,前端的,J2EE,可以通过像调用,Web Service,一样来调用适配器中的接口,这为系统的复用和更新提供了极大的便利。,下面的应用实现部分就是基于,WSIF,架构。,第8章应用CTG实现J2EE应用与CICS的互连,8.5.2 方案二:Web服务调用框架 (WSIF)Web服,17,下图说明了利用,WSIF,同资源适配器的交互,,Java Service Proxy,可以用,EJB,的,Session Bean,来实现,WSIF,的调用,在,J2EE,端的,Servlet,中通过调用,EJB,的,Session Bean,中的方法就可以实现,J2EE,应用(,WebSphere,)同异构平台(,CICS,)上应用的交互。,利用,WSIF,同适配器进行交互的示意图如下图,8-6,所示:,图,8-6,:利用,WSIF,同适配器进行交互,第8章应用CTG实现J2EE应用与CICS的互连,下图说明了利用WSIF同资源适配器的交互,Java Serv,18,WSIF,调用方式的伪代码实现如下图,8-7,所示:,图,8-7,:,WSIF,调用方式的伪代码实现,第8章应用CTG实现J2EE应用与CICS的互连,WSIF调用方式的伪代码实现如下图8-7所示:图8-7:WS,19,8.6,基于,CTG JCA,的应用实现,本应用将一个基于,COMMAREA,的,CICS,应用,利用,CTG,中的,JCA,架构,通过,J2EE,程序进行访问。,这里我们利用,EJB,的,Session Bean,作为,WSIF,的调用容器,并且为了更好的对,Session Bean,的访问接口进行封装,利用,EJB Access Bean,对其进行进一步的封装。,而对于前端的,J2EE,应用来说只暴露了业务逻辑的访问接口,体现了很好的分层架构思想。,下图,8-8,为整个应用组件的部署示意图,我们利用,Windows,平台上的,CTG,来连接远程的,CICS,服务器,在,WAS,服务器中,通过,EJB,组件通过调用,WSIF,同,CICS ECI,适配器进行交互。,图,8-8,: 应用部署架构图,第8章应用CTG实现J2EE应用与CICS的互连,8.6 基于CTG JCA的应用实现 本应用将一个基于COM,20,下图,8-9,为整个应用的分层架构,这里我们根据,CICS,中程序的,COMMAREA,的数据结构生成,WSDL,,它包含了,Web Service,调用的所有细节,例如,请求和响应的数据描述、操作方法、服务端的地址绑定等。,利用,WSDL,构建,WSIF,组件,通过,EJB,的,Session Bean,来调用,WSIF,,同时为了给前端,J2EE,访问层组件提供更为良好的接口(屏蔽掉,EJB,调用时过于繁杂的接口),设置了,Access Bean,,只暴露给访问层实现业务逻辑调用的接口。,图,8-9,:应用分层架构图,第8章应用CTG实现J2EE应用与CICS的互连,下图8-9为整个应用的分层架构,这里我们根据CICS中程序的,21,右方为,EJB Session Bean,中调用,WSIF,的核心代码:,第8章应用CTG实现J2EE应用与CICS的互连,右方为EJB Session Bean中调用WSIF的核心代,22,以下为在,Servlet,中通过,Access Bean,调用,Session Bean,的代码:,第8章应用CTG实现J2EE应用与CICS的互连,以下为在Servlet中通过Access Bean调用Ses,23,此课件下载可自行编辑修改,供参考!,感谢您的支持,我们努力做得更好!,第8章应用CTG实现J2EE应用与CICS的互连,此课件下载可自行编辑修改,供参考!第8章应用CTG实现J2E,24,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!