You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by Cory Wilkerson <cw...@travelnow.com> on 2003/08/06 20:10:57 UTC
RPC & Faults
Good afternoon,
According to the WSDL specification, faults are defined as follows for a request/response operation:
-------------------------------------
<wsdl:definitions .... >
<wsdl:portType .... > *
<wsdl:operation name="nmtoken" parameterOrder="nmtokens">
<wsdl:output name="nmtoken"? message="qname"/>
<wsdl:input name="nmtoken"? message="qname"/>
<wsdl:fault name="nmtoken" message="qname"/>*
</wsdl:operation>
</wsdl:portType >
</wsdl:definitions>
-------------------------------------
So, I'm assuming that I can specify my own type of fault and feed it to the wsdl:fault element, ie:
-------------------------------------
<complexType name="corysfault">
<sequence>
<element name="someInfo" type="xsd:string"/>
<element name="moreInfo" type="xsd:string"/>
</sequence>
</complexType>
-------------------------------------
My question is this -- where do I need to start in order to pull this off via an rpc/encoded service where Axis is handling all the marshalling/unmarshalling of soap encoded messages into java types? Is there a facility to return an unchecked Axis exception that's constructed according the schema I've defined above? I'm imagining some sort of object that I pass to some Axis utility to throw an exception perhaps?
-------------------------------------
CorysFault {
private String someInfo;
private String moreInfo;
public CorysFault() {
}
public get/set someInfo
public get/set moreInfo
}
-------------------------------------
Seems like this would be quite easy to pull off if I was using the message provider, but alas, I'm not.
Thanks in advance for any input,
Cory