It works!!! Thank you!!!

On 10/24/2011 02:50 PM, ?????? ???????? wrote:
Hi.

You must declare type of your fault message. See the example.

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/";
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
  xmlns:xs="http://www.w3.org/2001/XMLSchema";
  xmlns:flt="http://www.otr.com/sufd/cryptoWebService/xml/faultMessage";
  xmlns:tns="http://www.otr.com/sufd/cryptoWebService";
  targetNamespace="http://www.otr.com/sufd/cryptoWebService";>
<types>
<xs:schema targetNamespace="http://www.otr.com/sufd/cryptoWebService";>
<xs:element name="signXml" type="xs:base64Binary"/>
<xs:element name="signXmlResponse" type="xs:base64Binary"/>
</xs:schema>

*<xs:schema targetNamespace="
http://www.otr.com/sufd/cryptoWebService/xml/faultMessage";>*
*<xs:element name="faultDetail">*
*<xs:complexType>*
*<xs:sequence>*
*<xs:element name="fltCode" type="xs:string"/>*
*<xs:element name="fltMessage" type="xs:string"/>*
*</xs:sequence>*
*</xs:complexType>*
*</xs:element>*
*</xs:schema>*
</types>

*<message name="faultMessage">*
*<part name="faultDetail" element="flt:faultDetail"/>*
*</message>*

<message name="signXmlRequestMessage">
<part name="xml" element="tns:signXml">
</part>
</message>

<message name="signXmlResponseMessage">
<part name="sign" element="tns:signXmlResponse">
</part>
</message>

<portType name="signWebServicePortType">
<operation name="signXml">
<input message="tns:signXmlRequestMessage"/>
<output message="tns:signXmlResponseMessage"/>
*<fault name="signXmlFaultMessage" message="tns:faultMessage"/>*
</operation>
</portType>

<binding name="signWebServiceBinding" type="tns:signWebServicePortType">
<soap:binding style="document" transport="
http://schemas.xmlsoap.org/soap/http"/>
<operation name="signXml">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
*<fault name="signXmlFaultMessage">*
*<soap:fault name="signXmlFaultMessage" use="literal"/>*
*</fault>*
</operation>
</binding>

<service name="signWebService">
<port name="signWebServicePort" binding="tns:signWebServiceBinding">
<soap:address location="No Target Address"/>
</port>
</service>
</definitions>


2011/10/24 Hugo Terelle<[email protected]>

Hi everybody,

I need to send a message like the following:

<?xml version="1.0" ?>
<soapenv:Envelope 
xmlns:soapenv="http://www.w3.**org/2003/05/soap-envelope<http://www.w3.org/2003/05/soap-envelope>"
xmlns:ter="http://www.onvif.**org/ver10/error<http://www.onvif.org/ver10/error>"
xmlns:xs="http://www.w3.org/**2000/10/XMLSchema<http://www.w3.org/2000/10/XMLSchema>
">
<soapenv:Body>
<soapenv:Fault>
<soapenv:Code>
<soapenv:Value>fault code</soapenv:Value>
<soapenv:Subcode>
<soapenv:Value>ter:fault subcode</soapenv:Value>
<soapenv:Subcode>
<soapenv:Value>ter:fault subcode</soapenv:Value>
</soapenv:Subcode>
</soapenv:Subcode>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text xml:lang="en">fault reason</soapenv:Text>
</soapenv:Reason>
<soapenv:Node>http://www.w3.**org/2003/05/soap-envelope/**
node/ultimateReceiver<http://www.w3.org/2003/05/soap-envelope/node/ultimateReceiver>
</**soapenv:Node>
<soapenv:Role>http://www.w3.**org/2003/05/soap-envelope/**
role/ultimateReceiver<http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver>
</**soapenv:Role>
<soapenv:Detail>
<soapenv:Text>fault detail</soapenv:Text>
</soapenv:Detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>


But it seems that the SoapFault class doesn't manage everything needed
(like the SubCode object embedded in another SubCode object).

Can someone provide me some help?

Greetings,
Hugo Terelle



Reply via email to