nik*_*ers 3 java spring soap wsdl spring-ws
我刚刚在Manning Publications Co.的Craig Walls的第二版"Spring in Action"中阅读了关于SOAP的文章.他们写了一篇关于契约优先的文章,就像Spring文档一样,编写了一个消息和方法XML和然后将其转换为XSD,然后再转换为WSDL,同时在Spring中连接编组和服务路径.
我必须承认,我不相信.为什么这比制作服务接口并基于该接口生成服务更好?这与在Spring3中定义我的REST @Controllers非常接近.通过使用Spring制作SOAP Web服务,我是否可以选择这样的路径?
另外:我想复制已经存在的Web服务.我有它的WSDL,我可以放置我的服务而不是它.这是推荐的吗?如果是这样,推荐的方法是什么?
干杯
Nik
Run Code Online (Sandbox Code Playgroud)
我想你必须穿过你的电线.
合同首先意味着定义WSDL,然后创建Java代码以支持此WSDL.
契约最后意味着创建Java代码,并在以后生成WSDL.
最后合同的危险在于,如果您的WSDL是从Java代码自动生成的,并且您重构了Java代码,这会导致您的WSDL发生更改.
2.3.1.脆弱性
如前所述,契约最后的开发风格导致您的Web服务契约(WSDL和您的XSD)是从您的Java契约(通常是一个接口)生成的.如果您使用这种方法,您将不能保证合同随着时间的推移保持不变.每次更改Java合同并重新部署它时,Web服务合同都可能会有后续更改.
另外,并非所有SOAP堆栈都从Java契约生成相同的Web服务契约.这意味着将当前的SOAP堆栈更改为不同的(无论出于何种原因),也可能会更改您的Web服务合同.
当Web服务合同发生变化时,必须指示合同用户获取新合同并可能更改其代码以适应合同中的任何更改.
为了使合同有用,它必须尽可能长时间保持不变.如果合同发生变化,您必须联系您服务的所有用户,并指示他们获取新版本的合同.
归档时间: |
|
查看次数: |
4190 次 |
最近记录: |