I have a WCF 4.0 service for internal use. Another team is trying to consume it in Java.
IWAB0399E Error in generating Java from WSDL: java.io.IOException:
ERROR: Missing <soap:fault> element inFault "PasswordReuseFaultFault" ...
One source suggests it may be a Soap 1.1 vs. Soap 1.2 issue
Indeed my WCF generated WSDL
<wsdl:fault name="PasswordReuseFaultFault">
<wsp:PolicyReference URI="#blah_blah_blah_PasswordReuseFaultFault_Fault"/>
<soap12:fault name="PasswordReuseFaultFault" use="literal"/>
</wsdl:fault>
notice the <soap12:fault>
instead of the expected <soap:fault>
I'm pretty sure that is the cause of the problem.
- How do I get WCF to generate soap 1.1 WSDL ?
or
- What should I tell the Java team to do so their tools can understand the newer protocol?
Edit:
I found out that basicHttpBinding uses SOAP 1.1 and puts the expected <soap:fault>
in the WSDL, where wsHttpBinding puts <soap12:fault>
(using the SOAP 1.2 spec I guess.)
I found some suggestions that using Axis instead of the IDE tool will yield better results, I'm not sure if I can get the Java team to buy into that.