axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Guilhem Tardy <gravs...@yahoo.com>
Subject Re: empty array of complex type crashes the client
Date Fri, 27 Jan 2006 15:55:36 GMT
Adrian,

> Looking at your WSDL you're using rpc/literal style messages.

This was correct, until I made it all document/literal (of the "wrapped" type,
so as to conform to WS-I.

      <xsd:element name="RequestType">
        <xsd:complexType>
          <xsd:sequence maxOccurs="1" minOccurs="1">
            <xsd:element name="Login" type="xsd:string"/>
            <xsd:element name="Password" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="ResponseType">
        <xsd:complexType>
          <xsd:sequence maxOccurs="1" minOccurs="1">
            <xsd:element name="AuthTicket" type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>

    <wsdl:operation name="test">
      <wsdl:input message="tns:Request"></wsdl:input>
      <wsdl:output message="tns:Response"></wsdl:output>
    </wsdl:operation>

    <wsdl:operation name="test"><soap:operation
soapAction="http://test.wsdl#test"/><wsdl:input><soap:body
use="literal"/></wsdl:input><wsdl:output><soap:body
use="literal"/></wsdl:output></wsdl:operation>

(Please let me know if you wish to see the complete WSDL file.)

Unfortunately, the problem remains. I have tested with the server returning
either of the following:

<ResponseType xmlns="http://test.wsdl"></ResponseType>
<ResponseType xmlns="http://test.wsdl"><Events/></ResponseType>

In both cases, the client crashes. This is unfortunate, because the server is
expected to return no event in most cases.

Could you comment on the support for complex types in Axis C++?

Best regards,
Guilhem.

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Mime
View raw message