IBM®WebSphere®Transformation Extender是IBM的通用转换引擎。 在称为WebSphere Transformation Extender Design Studio的图形环境中,您可以轻松描述数据并将其映射到多个输入和输出之间。 定义地图后,您可以使用多种不同方法(包括批处理模式)运行它们,可以通过Web Service调用,在z / OS上以及多种其他方式以多种语言提供API。 另外,WebSphere Transformation Extender运行时引擎与各种其他IBM产品紧密集成在一起,例如WebSphere Message Broker,WebSphere Enterprise Service Bus和WebSphere Process Server。
WebSphere DataPower SOA Appliances在专用且易于部署的设备中提供了一系列功能。 几个版本的DataPower Appliance提供不同级别的功能。 DataPower XML Accelerator XA 35提供XML,架构,XPath和XSLT处理。 DataPower XML Security Gateway XS40添加了防火墙,加密和访问控制。 DataPower Integration Appliance XI50进一步增加了ESB功能,包括消息路由和转换。
使用WebSphere Transformation Extender Design Studio为DataPower Appliances开发转换是该平台的自然扩展。 DataPower Appliances使用XSLT在设备上支持高性能XML到XML的转换。 WebSphere Transformation Extender提供了对设备上的XML到二进制或二进制到XML转换的支持,而无需编写任何XSLT。 与独立产品一样,编写转换就像使用Design Studio图形用户界面定义输入和输出然后在它们之间进行映射一样简单。 本文将向您展示如何在WebSphere Transformation Extender Design Studio中创建多个地图,然后在DataPower Appliance上运行它们。
要遵循本文附带的示例,您需要安装以下产品:
请参阅产品文档以获取有关操作系统和硬件要求的信息。
使用WebSphere Transformation Extender Design Studio创建转换是一个简单的过程。 使用此产品的主要好处是,了解独立版本的WebSphere Transformation Extender中创建转换的过程,使您可以利用这些转换来创建针对DataPower的转换。
创建转换的第一步是定义类型树,它是WebSphere Transformation Extender工件,它是您要转换的对象的数据字典。 它是数据的类似于模式的表示形式,它使WebSphere Transformation Extender可以对输入和输出执行验证。
有多种方法可以创建类型树,具体取决于您的数据。 WebSphere Transformation Extender提供了一组导入程序,可以自动执行此过程,如下所述。 这些导入器包括XML模式,DTD,COBOL抄写本,CORBA IDL文件等。 如果要自己定义输入数据,则可以使用“类型设计器”图形工具,该工具可用于指定数据将包含哪些字段,如何定界以及要执行的任何类型验证。
类型树不依赖于输入或输出方向,可以广泛地重用。 他们只是告诉WebSphere Transformation Extender需要什么样的数据,以确保您转换的所有数据都是有效的。
定义了要转换的所有类型树之后,就该开始映射了。 WebSphere Transformation Extender Design Studio提供了一个称为Map Designer的图形工具,使此过程变得简单。 首先,创建一个扩展名为.mms的地图源文件,这是一个物理工件,其中包含您可能执行的所有映射。 接下来,您将创建一个单独的地图-地图源文件可以包含许多地图,但是出于本文的目的,我们将其限制为一个。
每个地图都有输入和输出卡。 WebSphere Transformation Extender允许多个输入和输出,因此您可以从各种来源读取并在单个地图的上下文中写出到各个位置。 创建输入卡时,最重要的设置是卡名称。 定义输入卡和输出卡后,映射就像从输入到输出字段的拖动一样简单。 为了执行更复杂的功能,WebSphere Transformation Extender为诸如转换数据,对其执行数学运算或操纵字符串之类的任务提供了内置函数。 映射所有输出字段后,就可以构建地图并运行它了,这是在“地图设计器”工具中进行的。
现在您已经了解了创建WebSphere Transformation Extender类型树和映射所涉及的概念,您可以运行一些实际的映射。 从一个简单的“ Hello World”地图开始,然后进行更实际的示例。
首先加载并运行一个简单的WebSphere Transformation Extender映射,首先使用WebSphere Transformation Extender引擎,然后移至DataPower:
您已经使用WebSphere Transformation Extender引擎成功运行了样本图。 设置此映射以在DataPower上运行非常简单。
现在,您已经制作了一张简单的地图,并显示了在WebSphere Transformation Extender运行时引擎和DataPower运行时引擎上运行它的容易程度。 下一步是一个更真实的示例。
结合使用WebSphere Transformation Extender Design Studio和DataPower的最强大的用例之一是将旧应用程序与可以使用XML的新服务连接起来。 Design Studio使这一过程变得简单,并让您保留了使用DataPower Appliance的好处。 在此示例中,您将读取XML数据并将其以COBOL字帖格式写出。 数据涉及一个简单的采购订单。 这是模式:
该模式定义PurchaseOrderType对象,该对象包含有关订单的信息以及由多个字段组成的shipTo地址。 这是与该模式对应的输入数据:
- Widget
15
John Doe
123 North St
Miami
FL
33175
输出是具有以下结构的COBOL抄写本:
000010 01 PURCHASE_ORDER.
000020 02 ITEM PIC X(30).
000030 02 ITEM_COUNT PIC S9(10).
000040 02 NAME PIC X(30).
000050 02 STREET PIC X(30).
000060 02 CITY PIC X(30).
000070 02 STATE PIC X(30).
000080 02 ZIP PIC S(11).
创建此解决方案的第一步是创建类型树。 首先,使用WebSphere Transformation Extender架构导入器导入purchase_order.xsd文件:
接下来,执行类似的步骤来为副本创建类型树。
现在,您已经定义了输入和输出,并准备好完成地图。
前面的示例展示了如何构建可在DataPower上使用的类型树和映射。 WebSphere Transformation Extender的先前用户应注意,某些功能在DataPower运行时上受到限制。 为了简化用户的过程,地图设计器会在构建时执行检查,以确保地图中不包含任何受限功能。 WebSphere Transformation Extender Design Studio文档中提供了这些限制的完整列表。
本文展示了如何开始使用WebSphere Transformation Extender Design Studio创建类型树和映射并将其部署在WebSphere DataPower SOA Appliances上。 DataPower Appliances提供了与WebSphere Transformation Extender Design Studio一起使用时可以放大的强大功能。
翻译自: https://www.ibm.com/developerworks/websphere/library/techarticles/0712_vila/0712_vila.html