我有一个WCF 4.0服务供内部使用。另一个团队正试图在Java中使用它。IWAB0399E从WSDL生成Java时出错:java.io.IOException:错误:缺少<soap:fault>元素inFault
IWAB0399E Error in generating Java from WSDL: java.io.IOException:
ERROR: Missing <soap:fault> element inFault "PasswordReuseFaultFault" ...
一个来源表明,它可能是一个Soap 1.1 vs. Soap 1.2 issue
事实上我的WCF生成WSDL
<wsdl:fault name="PasswordReuseFaultFault">
<wsp:PolicyReference URI="#blah_blah_blah_PasswordReuseFaultFault_Fault"/>
<soap12:fault name="PasswordReuseFaultFault" use="literal"/>
</wsdl:fault>
通知<soap12:fault>
而不是预期的<soap:fault>
我敢肯定,是的原因问题。
- 如何让WCF生成soap 1.1 WSDL?
或
- 我应该告诉Java团队这样做他们的工具可以了解新的协议?
编辑:
我发现basicHttpBinding的使用SOAP 1.1,并把预期<soap:fault>
在WSDL中,那里的wsHttpBinding提出<soap12:fault>
(使用SOAP 1.2规范,我猜。)
我发现some suggestionsusing Axis instead of the IDE tool会产生更好的结果,我不确定是否可以让Java团队购买。