O
ocean2005
Hello, I'am trying to generate a SOAP call from a wsdl file but I
receive this error message:
org.xml.sax.SAXException: WSWS3084E: Error: SimpleDeserializer
encountered a child element, which is NOT expected, in something it was
trying to deserialize. To see the message containing the parsing error
in the log, either enable web service engine tracing or set
MessageContext.setHighFidelity(true).
Follow my code:
SOAP CALL:
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:si="http://soapinterop.org/xsd"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:getTemperature
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://testuri.org">
<Request>
<Requester xsi:type="xsd:string">Appl</Requester>
<RequesterData xsi:type="xsd:string">Appl</RequesterData>
<Data xsi:type="xsd:string">AAA</Data>
<Applications>
<appl xsi:type="xsd:string"/>
<appl xsi:type="xsd:string"/>
<appl xsi:type="xsd:string"/>
</Applications>
</Request>
</ns1:getTemperature>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://test.com"
xmlns:impl="http://test.com" xmlns:intf="http://test.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<schema elementFormDefault="qualified"
targetNamespace="http://test.com"
xmlns="http://www.w3.org/2001/XMLSchema" xmlns:impl="http://test.com"
xmlns:intf="http://test.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<element name="getTemperature">
<complexType>
<sequence>
<element name="xmlRequest" nillable="true" type="xsd:string"/>
</sequence>
</complexType>
</element>
<element name="getTemperatureResponse">
<complexType>
<sequence>
<element name="getTemperatureReturn" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="getTemperatureRequest">
<wsdlart element="intf:getTemperature" name="parameters"/>
</wsdl:message>
<wsdl:message name="getTemperatureResponse">
<wsdlart element="intf:getTemperatureResponse"
name="parameters"/>
</wsdl:message>
<wsdlortType name="WS">
<wsdlperation name="getTemperature">
<wsdl:input message="intf:getTemperatureRequest"
name="getTemperatureRequest"/>
<wsdlutput message="intf:getTemperatureResponse"
name="getTemperatureResponse"/>
</wsdlperation>
</wsdlortType>
<wsdl:binding name="WSSoapBinding" type="intf:WS">
<wsdlsoap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdlperation name="getTemperature">
<wsdlsoapperation soapAction=""/>
<wsdl:input name="getTemperatureRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdlutput name="getTemperatureResponse">
<wsdlsoap:body use="literal"/>
</wsdlutput>
</wsdlperation>
</wsdl:binding>
<wsdl:service name="WSService">
<wsdlort binding="intf:WSSoapBinding" name="WS">
<wsdlsoap:address
location="http://localhost:9080/WebServices/services/WS"/>
</wsdlort>
</wsdl:service>
</wsdl:definitions>
receive this error message:
org.xml.sax.SAXException: WSWS3084E: Error: SimpleDeserializer
encountered a child element, which is NOT expected, in something it was
trying to deserialize. To see the message containing the parsing error
in the log, either enable web service engine tracing or set
MessageContext.setHighFidelity(true).
Follow my code:
SOAP CALL:
<SOAP-ENV:Envelope
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:si="http://soapinterop.org/xsd"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns1:getTemperature
SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://testuri.org">
<Request>
<Requester xsi:type="xsd:string">Appl</Requester>
<RequesterData xsi:type="xsd:string">Appl</RequesterData>
<Data xsi:type="xsd:string">AAA</Data>
<Applications>
<appl xsi:type="xsd:string"/>
<appl xsi:type="xsd:string"/>
<appl xsi:type="xsd:string"/>
</Applications>
</Request>
</ns1:getTemperature>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
WSDL:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://test.com"
xmlns:impl="http://test.com" xmlns:intf="http://test.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<schema elementFormDefault="qualified"
targetNamespace="http://test.com"
xmlns="http://www.w3.org/2001/XMLSchema" xmlns:impl="http://test.com"
xmlns:intf="http://test.com"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<element name="getTemperature">
<complexType>
<sequence>
<element name="xmlRequest" nillable="true" type="xsd:string"/>
</sequence>
</complexType>
</element>
<element name="getTemperatureResponse">
<complexType>
<sequence>
<element name="getTemperatureReturn" nillable="true"
type="xsd:string"/>
</sequence>
</complexType>
</element>
</schema>
</wsdl:types>
<wsdl:message name="getTemperatureRequest">
<wsdlart element="intf:getTemperature" name="parameters"/>
</wsdl:message>
<wsdl:message name="getTemperatureResponse">
<wsdlart element="intf:getTemperatureResponse"
name="parameters"/>
</wsdl:message>
<wsdlortType name="WS">
<wsdlperation name="getTemperature">
<wsdl:input message="intf:getTemperatureRequest"
name="getTemperatureRequest"/>
<wsdlutput message="intf:getTemperatureResponse"
name="getTemperatureResponse"/>
</wsdlperation>
</wsdlortType>
<wsdl:binding name="WSSoapBinding" type="intf:WS">
<wsdlsoap:binding style="document"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdlperation name="getTemperature">
<wsdlsoapperation soapAction=""/>
<wsdl:input name="getTemperatureRequest">
<wsdlsoap:body use="literal"/>
</wsdl:input>
<wsdlutput name="getTemperatureResponse">
<wsdlsoap:body use="literal"/>
</wsdlutput>
</wsdlperation>
</wsdl:binding>
<wsdl:service name="WSService">
<wsdlort binding="intf:WSSoapBinding" name="WS">
<wsdlsoap:address
location="http://localhost:9080/WebServices/services/WS"/>
</wsdlort>
</wsdl:service>
</wsdl:definitions>