CICS一直持续不断地寻找方法来简化开发难度。CICS/Transaction Server 4.1引入TRANSFORM命令,该命令可以让开发者将XML与数据结构互相转换。TRANSFORM不但可以用来支持简单对象访问协议(SOAP)消息,还支持更其他更广泛应用。 该组件包括两个功能模块:XML助手与TRANSFORM命令。
XML助手 IBM似乎在几年前Web service助手发布后便提到了XML助手的相关信息。实际上工具的基本功能便是从XML表或语言结构用创建用于CICS转换所需的元文件。但是,作为以为更广义的处理工具,它并不寻找特别对应于SOAP的元素或结构。 助手工……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
CICS一直持续不断地寻找方法来简化开发难度。CICS/Transaction Server 4.1引入TRANSFORM命令,该命令可以让开发者将XML与数据结构互相转换。TRANSFORM不但可以用来支持简单对象访问协议(SOAP)消息,还支持更其他更广泛应用。
该组件包括两个功能模块:XML助手与TRANSFORM命令。
XML助手
IBM似乎在几年前Web service助手发布后便提到了XML助手的相关信息。实际上工具的基本功能便是从XML表或语言结构用创建用于CICS转换所需的元文件。但是,作为以为更广义的处理工具,它并不寻找特别对应于SOAP的元素或结构。
助手工具支持COBOL,PL/1、C和C++,DFHLS2SC将语言结构转换成XML表,接着DFHWS2LS从XML表中创建语言结构。这两个应用程序在新建约束文件的同时,也创建了资源定义约束与注释。工具同样创建归档文件(.ZIP和.JAR),但是需要在CICS使用它们之前进行解压。
束与名单需要放在某个通过RDO BUNDLE定义所指向的目录中。一旦束资源就位,CICS将创建XML TRANSFORM资源给该TRANSFORM使用。
有趣的是,CICS手册中谈论到Web services和XML 助手的兼容性。通过DFHLS2SC将语言结构转换为XML,接着通过DFHWS2LS将其重新转换回来,会发现不同,但“逻辑一致”,虽然IBM警告,你可能将无法将转换后的数据结构再倒回DFHLS2SC(如果你想这样做的话)。其结果是你可能可以混合与匹配,但最好的方案是利用助手功能,妥善使用工具。
如果你不想使用CICS的免费工具,Rational Developer for Z(RDz)同样可以产生约束文件与资源定义。
TRANSFORM 命令
随着资源定义的产生,下一步便是通过TRANSFORM命令利用约束文件。一共有两点需要注意。TRANSFORM DATAOXML获得输入数据结构并转换为XML。相反的,TRANSFORM XMLTODATA将XML转换为语言结构。
两版本的命令都需要申明语言结构与XML数据容器以及他们的频道。他们同样需要指派16位XMLTRANSFORM资源名,其通过XML助手或RDz生成的束获得。
XMLTODATA命令提供一些其他运算,可以让应用在经历变化前获得XML的相关信息。举例来说,CSCI程序可以通过名字空间Uniform Resource Identifier (URI),获得XML中第一个元素的名字。
这对你意味着什么?
困难部分在于搞清楚TRANSFORM命令用于分析XML的大量选项。
有很多方法程序地转换XML。编写自己的转换程序可能会很有趣,但我们一般不推荐。RDz可以使用PARSE语法生成COBOL程序。这将减小维护负担并创建一个自定义转换期,其可以实现比普通程序更好的功能。不仅如此,使用XMLSS选项进行程序编译将让CPU适当地进行转换工作zAPP。
CICS自己有一个复杂的、用于转换XML SOAP消息为数据结构的架构,其拥有许多优势。首先CICS通过z/OS XML服务实现,该服务可优化zAPP。其次,如果用于约束与管道文件的基础架构配置正确,程序代码便不需要接触XML。取而代之的是CICS将数据区域交与程序,就像什么特别情况都没发生似的。
另一方面,无论XML转换是否需要,TRANSFORM命令都是一个可靠的一般用途工具。
举例来说,如果你的应用需要处理来自SOAP请求的原生XML。在通过Web service助手生成约束文件时,设置XML-ONLY=TRUE选项,将告诉CICS将SOAP消息直接传递给应用程序。在访问消息后,应用程序可以使用TRANSFORM命令将信息转换为语言结构。TRANSFORM命令同样可以用来使安装绕过CICS的Web service接口并允许应用程序在与其他系统通过HTTP协议交互时完全控制自己的XML。
TRANSFORM命令可以同样被用来将控制各种Web通信的范围,例如,将类似XML配置文件这样简单的内容限制在一个控制块内。它同样可以用来释放或将文档(真实意义上的文本)以XML格式保存。将来CICS将可能需要通过TRANSFORM展开保存在数据库中的XML。
最后,其归结了什么是你最需要的,如何最有效率地获得。并一如既往的,达成目的的方法很多。
相关推荐
-
如何为大型机开启CICS存储保护
存储重复占位段是调试时最棘手的问题之一,大型机存储重复占位段可使数据、CICS区域遭到破坏。为了解决这个问题,我们采用存储保护。
-
历史观察:z/OS大型机的事务和数据库管理系统巡礼
IBM一推出现代型大型机,大型机与操作员互动并执行实时普通业务处理这一趋势就变得十分明朗。要达到这个目的,需要引入“事务处理器”。
-
提高应用程序效率的法宝:CICS和服务组件架构
服务组件架构(Service Component Architecture,SCA)是一个应用程序打包和描述方案,旨在提高在应用程序编程中的可移动性和复用。
-
两个被遗忘但很有用的CICS处理进程
自上个世纪80年代以来,IBM的客户信息控制系统(CICS)取得了长促的进步,首先,它提供了一串全屏幕命令处理进程,如CEMT,其次是系统编程接口(SPI)和CICS……