尽管如此,仍然需要在共同使用这些Web服务时的建议和策略。有些实践答应您确保以互操作的方式既使用又公开Web服务。基于已有的经验,我整理了关于Web服务互操作性的“十大”要点列表。有些要点基于在Microsoft上运行的测试结果的发现,另外一些是在开发项目时觉得有用。这里的提示可以应用于IBM、BEA及多个开放源码堆栈。我希望它们对您有用。下面从下往上依次介绍这些要点:
10. 当心空数组
通过Web服务发送空数组可能产生问题。有些工具包将空数组识别为单个空值,而另外一些则将其表示为一组空数组元素。我的一般原则是,通过Web服务发送对象数组时,始终确保让数组包含有效数据。
9. 生成客户端代理时使用包和类型名称选项
很多基于Java的工具有生成客户端代理时指定独特的包和类型名称的选项(例如,BEA WebLogic使用“clientgen”参数,IBM Rational Application Developer使用向导)。
为共享同一数据嘈偷腤eb服务创建代理时,对包和类型名称的控制非常重要,例如在调用两个具有相同Order类型的Web服务时。
8. 测试生成的Java Bean是否为空
使用工具或IDE从XSD文件生成Java Bean时,始终确保您知道如何执行测试操作以了解对象是否为空。您可能认为下面的代码可以完成这样的测试:
if (myObject == null)
if (myDate.compareTo(yourDate) == 0)
if (myDate == yourDate)
这将有助于确保平台间日期比较的准确性,尤其是试图比较毫秒值时。
评论加载中…
![]() |