Apache CXF interop with WCF
<link rel="stylesheet" type="text/css" href="http://maomaode.bokeland.com/plugins/plogeshi/styles/plogeshi.css">我在上一篇中说,Apache CXF中的HelloWorld Service中的pingMe无法和WCF 互通,jim说他以前就碰到过这个问题,ted和他在cxf里有过这方面的交流, 原因是,CXF的wsdl里是这么描述的:<wsdl>
<soap use="literal"/"""">
</wsdl>
<wsdl>
<soap use="literal"/"""">
</wsdl>
而在WCF里,你必须要写成:
<wsdl name="pingMeRequest">
<soap use="literal"/"""">
</wsdl>
<wsdl name="pingMeResponse">
<soap use="literal"/"""">
</wsdl>
也就是说把binding里的input 和output必须加上name 参数
在论坛里, 我还得到另外一个解决方案, 就是把:
<wsdl message="tns:pingMeRequest" name="pingMeRequest"/"""">
<wsdl message="tns:pingMeResponse" name="pingMeResponse"/"""">
改为:
<wsdl message="tns:pingMeRequest"/"""">
<wsdl message="tns:pingMeResponse"/"""">
也就是把portType里的input 和output的name去掉
不知道这个算不算svcutil.exe的一个bug呢?
页:
[1]