Heiko_Wrede
17 years agoNew Contributor
Missing Matching Fault with Soap1.2
Hi Ole,
I have some trouble with SOAP Faults using soap1.2:
If I receive a SoapFault with a user defined detail section a "WARN:Missing matching Fault in wsdl for bindingOperation" message appears in the soapUI log window. The WSDL defines the fault so I think everything ist all right.
Same case using soap1.1 no warning is logged. A Schema Comliance assertion goes to green in both cases.
On my research for a solution I found a soapUI code snippet at http://www.soapui.org/xref/com/eviware/soapui/impl/wsdl/support/wsdl/WsdlValidator.html
(is it the latest code version?)
There (at the bottom) you are checking for the detail element by the XPath "//env:Fault/detail/ns:". That only matches for soap1.1. With soap1.2 it should be "//env:Fault/env:Detail/ns:".
The Detail element in SOAP 1.2 is namespace http://schemas.xmlsoap.org/wsdl/soap12/ , that's why the XPath is wrong and warns! It should not unter SOAP 1.2 if everything is correctly and most explicitly specified in wsdl as it really irritates me.
Furthermore the schema validation under SOAP 1.2 seems to succed even if specified Element under Detail is not matching the wsdl even if explicitly defined. Under SOAP 1.1 SOAPUI seems to warn appropriatly on schema validation.
Is it a "missing feature" in soapUI or don't I took the point of soap fault definition?
regards
Heiko
I have some trouble with SOAP Faults using soap1.2:
If I receive a SoapFault with a user defined detail section a "WARN:Missing matching Fault in wsdl for bindingOperation" message appears in the soapUI log window. The WSDL defines the fault so I think everything ist all right.
Same case using soap1.1 no warning is logged. A Schema Comliance assertion goes to green in both cases.
On my research for a solution I found a soapUI code snippet at http://www.soapui.org/xref/com/eviware/soapui/impl/wsdl/support/wsdl/WsdlValidator.html
(is it the latest code version?)
There (at the bottom) you are checking for the detail element by the XPath "//env:Fault/detail/ns:". That only matches for soap1.1. With soap1.2 it should be "//env:Fault/env:Detail/ns:".
The Detail element in SOAP 1.2 is namespace http://schemas.xmlsoap.org/wsdl/soap12/ , that's why the XPath is wrong and warns! It should not unter SOAP 1.2 if everything is correctly and most explicitly specified in wsdl as it really irritates me.
Furthermore the schema validation under SOAP 1.2 seems to succed even if specified Element under Detail is not matching the wsdl even if explicitly defined. Under SOAP 1.1 SOAPUI seems to warn appropriatly on schema validation.
Is it a "missing feature" in soapUI or don't I took the point of soap fault definition?
regards
Heiko