У меня есть служба WCF 4.0 для внутреннего использования. Другая команда пытается использовать его на Java.
IWAB0399E Error in generating Java from WSDL: java.io.IOException:
ERROR: Missing <soap:fault> element inFault "PasswordReuseFaultFault" ...
Один источник предполагает, что это может быть проблема Soap 1.1 против Soap 1.2
Действительно, мой 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 для генерации WSD 1.1 мыла 1.1?
или
- Что я должен сказать команде Java, чтобы их инструменты могли понимать более новый протокол?
Edit:
Я обнаружил, что basicHttpBinding использует SOAP 1.1 и выдает ожидаемое <soap:fault>
в WSDL, где wsHttpBinding помещает <soap12:fault>
(я полагаю, используя спецификацию SOAP 1.2)
Я нашел некоторые предположения , что использование Axis вместо инструмента IDE даст лучшие результаты, я не уверен, смогу ли я заставить команду Java купить это. 1038 *