Hi,

Exceptions thrown by my web service got lost. the soap messages look
healthy. 

My method does not have a return value but it may throw some exceptions.

I created the client with wsdl2java. For this method wsdl2java generates
a _call.invokeOneWay(). So thrown exceptions get ignored. How must I
change the wsdl file to get a _call.invoke() instead.


type declaration:

  <xs:complexType name="ExceptionType">
    <xs:sequence>
      <xs:element name="message" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="IllegalArgumentExceptionType">
    <xs:complexContent>
      <xs:extension base="tns:ExceptionType"/>
    </xs:complexContent>
  </xs:complexType>

message declaration:

  <message name="IllegalArgumentException">
    <part name="fault"
type="common-transfer:IllegalArgumentExceptionType"/>
  </message>
  
porttype declaration:

    <operation name="deleteUserInfo">
      <input message="tns:getInfoRequest" name="getInfoRequest"/>
      <fault name="IllegalArgumentException"
message="tns:IllegalArgumentException"/>
    </operation>

binding:

    <operation name="deleteUserInfo">
      <soap:operation soapAction=""/>
      <input name="getInfoRequest">
        <soap:body
          encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
          namespace="http://soap.user.adapter.platform.curiavant.de";
          use="encoded"/>
      </input>
      <fault>
        <soap:body use="encoded"
          namespace="http://soap.delivery.adapter.platform.curiavant.de";
          encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </fault>
    </operation>


bye

alex

Reply via email to