As I remember, Castor behavior changed so that it now includes xsi:type on root elements by default. I've seen case before where this causes problems with .Net. You can turn this off using the marshaller.setSuppressXSIType(true) call (within the Axis-Castor serializer code, in this case).

 - Dennis

Clement Lyons wrote:

Hi

I'm setting up a web using Axis 1.2 RC3 using castor for
(De)serialization as described in
http://www-106.ibm.com/developerworks/webservices/library/ws-castor/
as I want to use the castor XML validation.

When I run the example supplied I get the following I get the following
response

<?xml version="1.0" encoding="utf-8"?>
  <soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
xmlns:xsd="http://www.w3.org/2001/XMLSchema";
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
     <soapenv:Body>
        <getStockQuoteResponse xmlns="http://comindico.com.au/sqtest";>
           <quote xsi:type="quote">
              <symbol>IBM</symbol>
              <volume>979012312</volume>
              <lastTrade>
                 <price>678.0</price>
                 <date>1115179465600</date>
              </lastTrade>
              <change>
                 <dollar>678.0</dollar>
                 <percent>300.0</percent>
                 <positive>true</positive>
              </change>
           </quote>
        </getStockQuoteResponse>
     </soapenv:Body>
  </soapenv:Envelope>

I am relatively new to Web Service and Axis but my understanding is that
this is a wrapped service and that the xsi:type coded in the <quote> element should not be there
as the WSDL specifies literal.


When I use the Axis Bean (De)serialization this is not present.

Can anyone tell me 1. If this is correct/incorrect behaviour
2. If this will cause any interop issues
3. If there is a fix or work around for this


I've had a browse in the lists but can't find anything on this.

/Clement



Reply via email to