• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

在当今使用XML解决真正的商业问题

发布: 2009-9-28 10:47 | 作者: 不详 | 来源: 领测软件测试网 | 查看: 40次 | 进入软件测试论坛讨论

领测软件测试网

步骤三

  程序处理每一个外送文档。使用XML DOM,处理程序检索文档的标签元素,找到分发的方法和分发参数列表。处理程序也读取数据包并作为分离的XML文档储存在内存中(记住这是最终的合作伙伴订单XML)。 

在我们的例子中,一个送往伙伴B的订单有着以下的标签:



<FSO_Label>
<XMLDelivery Method="POSTXMLASFORM">
   <Post2Url type="delivery_param">
      http://www.PartnerURL.asp/Orders/AcceptPost_ReturnXML.asp
   </Post2Url>
   <FrmVarName type="delivery_param">partner_xml</FrmVarName>
   <ResponseXPath type="delivery_param">
      /partner_salesorder_response/@error_code
   </ResponseXPath>
   <ResponseSuccessValue type="delivery_param">
      success
   </ResponseSuccessValue>
</XMLDelivery>
</FSO_Label>

  在这个例子中,第二个标记,XMLDelivery,告诉系统那个方法应该被调用:
POSTXMLASFORM。记的吗,对于这个伙伴,我们通过HTTP以表单元素发送XML数据, 并且监听HTTP流的XML回应。因此,当调用此方法时,外送的XML必须指定几个参数。其中之一是处理程序将发送XML到哪个URL。我们在这儿也指定了合作伙伴要求使用的表单变量名。

  由两个参数我们可以让处理程序动态的从合作伙伴“读取”XML回应,来得知他们是否成功的接收了我们的订单。第一个参数是XML中的路径,它指示了处理程序在哪儿查找合作伙伴的系统回应。第二是成功标志。在这个案例中当我们完成分发合作伙伴订单时,是简单的“success”。如下图所示:



  我们的处理程序会发送订单XML到指定的URL,这意味什么呢?它会收到XML回应并且发送XML到一个运行进程,此进程将查找/partner_salesorder_response/@error_cod这个选定的节点值。如果此值恰好是ResponseSuccessValue参数,则处理程序知道整个交易成功并复制XML存档。如果他们不相符,意味着发送失败并且XML将被复制到出错目录中。

  考虑到在如下的场景中,一个公司可能要处理几个合作伙伴的业务,所有的处理都需要不同的订单分发方法并且制定不同的参数。这是此种解决方案的力量才会变得明显。这个方案不仅使得一个程序处理各种分发方法,而且也使得此程序动态地决定“听”到什么来决定给定的交易是否成功。这个示例应用程序监听合作伙伴的回应。但是一样的规则也可扩展到与内部系统的通信。

将来的考虑

  虽然这个示例应用程序具有完全的功能,这儿还是有许多值得改进的地方。这儿是一些立即引起注意的几点:

使用大纲或是DTD来验证合作伙伴的XML包是有效的 
自动化处理在出错目录中的文件 
检查SQL Server 2000在这个系统中的合适之处 
建立一个SOAP类,通过SOAP来分发订单数据。当与内部其它的系统进行通信时,这很灵活使用XSLT来建立订单表单 

 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

55/5<12345

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网