在WebSphere和DB2中使用标准数据格式(五)

日期: 2007-12-23 作者:Mohab El-Hilaly 来源:TechTarget中国

  下面是对清单 3 中内容的解释:标为 (1) 的代码部分从内部 Web 服务返回的负载中解析 ID。然后使用该 ID 构建 XQuery 语句,该语句随后将用作 HL7 服务的输入。在代码部分 (2) 中,创建了 HL7 服务调用所需的元素,并设置负载以构建 XQuery。代码部分 (3) 使用中介的参考名来定位服务。这可以通过在中介模块的组装(上文已描述)中连接 InvokeHL7Service 和 HL7ServiceImport 来实现。此连接可以让自定义中介元素使用被调用服务的符号名。实际调用返回符合 HL7 的文档,我们将把该文档发送回整个中介的客户端,这在部分 (4) 中发生,在该部分中,我们将负载从 HL7 Web 服务的响应插入到中介的响应消息结构中。该代码然后将传入 SMO 中的请求消息替换为响应消息,使标头上下文中的任何信息都可以通过,而且省去了重新创建所有这些信息的工作。

  实际运用
 
  若要运行和测试应用程序,请从本文的下载部分导入 MedicationProjects.zip 项目交换文件。请确保导入了该文件中包括的所有项目;该文件中包含内部 Web 服务的一个实现以及与中介模块相关的项目。

  本示例假定您的测试服务器运行于端口 9081。如果不是这种情况,则在将这些项目部署到服务器之前必须先更新相应的文件,使其指向正确的地址。

  在导入项目并且更新了端点地址(如果需要)后,便可以启动测试服务器和添加新的 MedicationSPLModuleApp 和 MedicationWSEAR 项目(使用在右键单击服务器时出现的 Add and remove projects… 菜单选项)。

  若要测试中介模块,请右键单击 MedicationSPLModule 项目中的 MedicationSPLExport_MedicationSPLHttp_Service.wsdl 文件(这必须在 J2EE 透视图中),并选择 Web Services => Test with Web Services Explorer。在 Explorer 中,输入任意字符串作为药品名来调用 getSPLInfo 操作(上文已提到,您输入的字符串将被测试实现忽略)。

  图 6 显示了在运行本示例后的 Web Services Explorer。若要运行测试,您的系统必须连接到 Internet,因为中介将调用位于 alphaWorks 网站上的 HL7 服务。请注意,收到的响应文档包含一个完全符合 HL7 的 SPL 记录。

  图 6. 测试完整的示例

 

  结束语

  本文介绍了如何合并 WebSphere ESB 和 DB2 pureXML,以简化对根据特定行业标准存储的 XML 文档的访问。尽管本文中的示例使用的是基于 Health Level 7 (HL7) 的卫生保健标准,但描述的方法适用于其他所有基于 XML 的特定行业标准,如 ACORD(保险业)、FpML(金融衍生行业)、FIXML(金融贸易)、MISMO(抵押)以及其他行业。

 

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐