Mar*_*nor 13 web-services contract-first
哪种是开发Web服务的更好方法; 合同第一或合同最后?
各有哪些优缺点?
你有哪些经验?
编辑 这个问题是关于Web服务的实现(读取:SOAP)问题是实现类是否应该首先编码,WSDL和XSD模式是从那里生成的(最后合同)还是首先编写的WSDL和XSD模式以及生成的实现类(合同优先)
合同优先是普遍接受的"最佳实践".
它使您非常清楚服务的生产者和消费者确切需要什么和期望什么.当您开始尝试转换java类型 - > xml类型时,这一点变得尤为重要.您还可以在不同的Web服务中重用模式.
我用过这两种方法.我的建议是使用契约优先模式,但首先编写 WSDL 代码.
编写WSDL文件有许多奇怪的细微差别,如绑定,端口等.我宁愿用工具而不是手工完成.有一些工具可以帮助你做到这一点,但没有一个比这更简单
@WebService public ...
至少您可以验证您的部署.
对于模式,我首先建议了契约,因为XML Schema语言比Java中描述的要丰富得多.我通常给出的一个例子是,XML Schema可以限制字符串的大小并应用正则表达式模式.在Java和注释中执行此操作看起来有点麻烦.
首先将模式作为契约的另一个优点是存在将模式文件转换为HTML文档的工具.
XJC工具可以生成必需的类文件.但是,我只建议在开始时这样做.
最后,您应该获取生成的WSDL文件并使用它.这样你就可以使用wsimport并验证从WSDL到Schema的整个过程是否有效.
您可以使用@WebService实现中的wsdlLocation属性部署WSDL文件,并且当用户从服务器请求WSDL时,应用程序服务器将为您修复绑定数据,但您仍保留注释.否则,您的注释将不会出现在请求的WSDL文件中.
| 归档时间: |
|
| 查看次数: |
12808 次 |
| 最近记录: |