当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:12:00  来源:本站整理

提高J2EE与.NET之间的互操作性,第2部份[Java编程]

赞助商链接



  本文“提高J2EE与.NET之间的互操作性,第2部份[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

引言

该系列文章的第 I 部份谈论了在编码之前计划 Web 服务描写语言(Web Services Description Language,WSDL)和 XML Schema 数据范例(XML Schema data types,XSD)的重要性,完好转换成文档或文字式样的基本原理,以及当开辟 Web 服务的时刻测试 WS-I Basic Profile 一致性的必要性.本文阐明了数据范例的用法及其对互操作性产生的影响.

Web 服务操作的输入参数及数据范例的返回值关于 Web 服务的互操作性产生非常大的影响.Web 服务用作 XML 文档转换的传送器.当数据对象被放入 Web 服务栈中时,它们被序列化成 XML 数据表示.另一方面,Web 服务栈需求精确地知道若何将那些 XML 数据表示映射到本地利用程序环境的需求中(比方 XML 数据的反序列化).XML Schema 定义驱动了映射.XSD 的目的是确保发送的范例在其他终端有可复写的版本.但是由于基本技术(企业版 Java 2 平台(Java™ 2 Platform,Enterprise Edition,J2EE)与 Mircosoft® .NET)的实现是差别的,所以 XSD 和那些平台上的本地数据范例之间的映射大概会差别.某些差别大概招致反序列化的失利,而别的的大概招致信息失真.

在接下来的部份中,我将谈论一些有关数据范例的互操作性的问题,比方:

供应商用于切确注释 XML Schema 的工具是不存在的,XML Schema 代表弱范例的调集对象并将它们映射成精确的本地数据范例.

含有空元素的数组的 XML 表示差别于 .NET 和 IBM® WebSphere®.

由于贫乏本地和 XSD 数据范例所同享的一对一的映射,所以转译问题招致了信息的丧失或精度的降低.

在 Web 服务办法签名中的复合数据范例集

调集对象大概包含任何数据范例的元素.因此,很多人把它们看做弱范例的数据构造.这使得它们成为非常好的编程工具.在面向对象的编程中,有大量的调集范例库.比方,在 Java 中存在:

java.util.Hashtable

Vectors

Hashmap

Set

ArrayList

而在 C# 中存在:

System.Collections.Hashtable

SortedList

Queue

Stack

ArrayList

假如在整个 Web 服务中公布了这些调集范例,那么它们大概引发不能被办理的问题.该问题是接纳方若何能理解被序列化了的简单对象拜候协议(Simple Object Access Protocol,SOAP)消息,这些消息中包含弱范例对象元素及本地数据范例.

即便一些调集范例看上去与某些语言非常类似,比方 C# 中的 System.Collections.ArrayList 及 Java 中的 java.util.ArrayList,记着调集合的元素是通用的参照.为了精确地解组调集的 XML 表示,客户必须预先理解原始的具体范例.这个任务交给工具包开辟人员来注释 Web 服务供应者所公布的 XML Schemas 并将 SOAP 消息映射到本地数据中——不是关于弱范例调集的简单任务.

目前,让我们来看一看 Collection 范例的 XML Schemas 是什么模样.这次,考虑布置在 Microsoft .NET 框架上的 Web 服务.假定 InventoryService 承受 Product 的 System.Collections.ArrayList 作为变量,为 ArrayList 中的每个产品设置新价钱(增长了百分之 10),并且返回 System.Collections.ArrayList 范例的新对象.


  以上是“提高J2EE与.NET之间的互操作性,第2部份[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 提高J2EE层与数据库层交互操作本领上风
  • <b>提高J2EE技术和.NET之间的互操作性,第1部份</b>
  • 提高J2EE与.NET之间的互操作性,第2部份
  • <b>提高J2EE技术与.NET之间的互操作性,第3部份</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .