WSDL文档就是服务契约,它提供了web服务服务端与客户端交换数据的标准途径。
XML Schema Definition(XSD),叫做data contract,描述了双方交换的数据类型的结构,描述了类型、
字段,以及在这些字段上的任何验证。
有4种方式可用来为XML定义这样的契约:
DTDs
XML Schema (XSD)
RELAX NG
Schematron
DTD对namespace的支持有限,因此不适合Web服务。RELAX NG和Schematron当然比XML Schema更
容易些。不幸的是,它俩不是那么地广泛的跨平台支持。
Spring-WS使用XML Schema.
A data contract is the center of Spring-WS and a service contract can be generated from a data contract.
我们可以从样例文档生成一个Schema。本节就学习如何将sample xml data messages转换成一个
schema文件。
安装xmlbeans-2.5.0,地址为http://xmlbeans.apache.org/
本书的Create Data Contract源码目录中放的就是该recipe的resources。
将XML messages拷贝到xmlbeans-2.5.0\bin中
执行命令:
inst2xsd -design rd -enumerations never placeOrderRequest.xml
placeOrderResponse.xml cancelOrderRequest
上面的命令创建出schema0.xsd schema文件。当然要修改,不过这是一个不错的起点。