Hi! I'm having an Axis 1.4 client that tries to cooperate with a Xfire
webservice. The Axis client is generated from the Xfire WSDL. 

When the Client receives the SOAP response :

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
   <soap:Body>
      <findCustomersResponse xmlns="http://service.customer.xxx.com";>
         <out xmlns="">None</out>
      </findCustomersResponse>
   </soap:Body>
</soap:Envelope>

... it seems to work. However, the Xfire service is more likely to give the
SOAP response :

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
   <soap:Body>
      <findCustomersResponse xmlns="http://service.customer.xxx.com";>
         <out xmlns="">
            <ns1:CustomerDto xmlns:ns1="http://api.customer.crm..xxx.com";>
               <contactInfo xmlns="http://api.customer.crm..xxx.com.com";>
                  <addrCoName xsi:nil="true" />
                  <addrEntranceCode xsi:nil="true" />
                  <addrPoBox xsi:nil="true" />
                  <addrStreetName>SomeStreet</addrStreetName>
                  <addrStreetNumber>34</addrStreetNumber>
                  <emailAddress>[EMAIL PROTECTED]</emailAddress>
               </contactInfo>
               <customerUnitType xmlns="http://api.customer.crm.xxx.com";>
                  <description xmlns="http://customer.type.xxx.com";
xsi:nil="true" />
                  <name xmlns="http://customer.type.xxx.com";>Y</name>
                  <value xmlns="http://customer.type.xxx.com";>O</value>
               </customerUnitType>
            </ns1:CustomerDto>
         </out>
      </findCustomersResponse>
   </soap:Body>
</soap:Envelope>

... and that causes my Axis 1.4 client to go :

org.xml.sax.SAXException: SimpleDeserializer encountered a child element,
which is NOT expected, in something it was trying to deserialize.
at
org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:145)
at
org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035)
at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165)
at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141)
at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236)
at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384)
at org.apache.axis.client.Call.invoke(Call.java:2467)
at org.apache.axis.client.Call.invoke(Call.java:2366)
at org.apache.axis.client.Call.invoke(Call.java:1812)

Is there a way around this?

-- 
View this message in context: 
http://www.nabble.com/Axis-1.4-%2B-Xfire-serializer-trouble-tf3584850.html#a10017377
Sent from the Axis - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to