Is there anyway to do this using WSDL first development?
Benson Margulies-4 wrote:
>
> Aegis allows you to declare a base class in the throw clause and deliver
> specific subclasses based on the actual class thrown. All the classes in
> question end up in the wsdl.
>
>
>
> On Fri, Mar 21, 2008 at 9:41 AM, mikem2005 <[EMAIL PROTECTED]> wrote:
>
>>
>> I'm trying to do the same thing...does anyone know if hierarchical
>> exceptions
>> are possible with CXF?
>>
>> Thanks!
>> Mike
>>
>>
>>
>>
>> Joel Turkel wrote:
>> >
>> > Hi,
>> >
>> > Is there anyway to get CXF to generate an inheritance hierarchy of
>> users
>> > defined exceptions? For example, I'd like to generate something like
>> the
>> > following from a WSDL:
>> >
>> > public interface Greeter {
>> >
>> > public void pingMe() throws PingMeSubclassFault, PingMeFault;
>> >
>> > }
>> >
>> > where PingMeSubclassFault is a subclass of PingMeFault. The WSDL below
>> > doesn't seem to do the trick i.e. PingMeFault and PingMeSubclassFault
>> are
>> > not related via inheritance. The actually WSDL I'm working with has a
>> rich
>> > hierarchy of exception so the lack of exception inheritance makes the
>> > generated code hard to work with.
>> >
>> > Thanks,
>> > Joel
>> >
>> > <?xml version="1.0" encoding="UTF-8"?>
>> > <wsdl:definitions name="HelloWorld"
>> > targetNamespace="http://apache.org/hello_world_soap_http"
>> > xmlns="http://schemas.xmlsoap.org/wsdl/"
>> > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>> > xmlns:tns="http://apache.org/hello_world_soap_http"
>> > xmlns:x1="http://apache.org/hello_world_soap_http/types"
>> > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>> > xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>> > <wsdl:types>
>> > <schema
>> > targetNamespace="
>> http://apache.org/hello_world_soap_http/types"
>> > xmlns="http://www.w3.org/2001/XMLSchema"
>> > xmlns:tns="
>> http://apache.org/hello_world_soap_http/types"
>> > elementFormDefault="qualified">
>> > <element name="pingMe">
>> > <complexType />
>> > </element>
>> > <element name="pingMeResponse">
>> > <complexType />
>> > </element>
>> > <element name="faultDetail"
>> type="tns:faultDetail"
>> />
>> > <complexType name="faultDetail">
>> > <sequence>
>> > <element name="minor"
>> type="short"
>> />
>> > <element name="major"
>> type="short"
>> />
>> > </sequence>
>> > </complexType>
>> > <element name="subclassFaultDetail">
>> > <complexType>
>> > <complexContent>
>> > <extension
>> base="tns:faultDetail">
>> > <sequence />
>> > </extension>
>> > </complexContent>
>> > </complexType>
>> > </element>
>> > </schema>
>> > </wsdl:types>
>> > <wsdl:message name="pingMeRequest">
>> > <wsdl:part name="in" element="x1:pingMe" />
>> > </wsdl:message>
>> > <wsdl:message name="pingMeResponse">
>> > <wsdl:part name="out" element="x1:pingMeResponse" />
>> > </wsdl:message>
>> > <wsdl:message name="pingMeFault">
>> > <wsdl:part name="faultDetail" element="x1:faultDetail" />
>> > </wsdl:message>
>> > <wsdl:message name="pingMeSubclassFault">
>> > <wsdl:part name="faultDetail"
>> element="x1:subclassFaultDetail" />
>> > </wsdl:message>
>> > <wsdl:portType name="Greeter">
>> > <wsdl:operation name="pingMe">
>> > <wsdl:input name="pingMeRequest"
>> > message="tns:pingMeRequest" />
>> > <wsdl:output name="pingMeResponse"
>> > message="tns:pingMeResponse" />
>> > <wsdl:fault name="pingMeFault"
>> message="tns:pingMeFault" />
>> > <wsdl:fault name="pingMeSubclassFault"
>> > message="tns:pingMeSubclassFault" />
>> > </wsdl:operation>
>> > </wsdl:portType>
>> > <wsdl:binding name="Greeter_SOAPBinding" type="tns:Greeter">
>> > <soap:binding style="document"
>> > transport="http://schemas.xmlsoap.org/soap/http"
>> />
>> > <wsdl:operation name="pingMe">
>> > <soap:operation style="document" />
>> > <wsdl:input>
>> > <soap:body use="literal" />
>> > </wsdl:input>
>> > <wsdl:output>
>> > <soap:body use="literal" />
>> > </wsdl:output>
>> > <wsdl:fault name="pingMeFault">
>> > <soap:fault name="pingMeFault"
>> use="literal" />
>> > </wsdl:fault>
>> > <wsdl:fault name="pingMeSubclassFault">
>> > <soap:fault name="pingMeSubclassFault"
>> use="literal" />
>> > </wsdl:fault>
>> > </wsdl:operation>
>> > </wsdl:binding>
>> > <wsdl:service name="SOAPService">
>> > <wsdl:port binding="tns:Greeter_SOAPBinding"
>> name="SoapPort">
>> > <soap:address
>> > location="
>> http://localhost:9000/SoapContext/SoapPort" />
>> > </wsdl:port>
>> > </wsdl:service>
>> > </wsdl:definitions>
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Generated-Faults-and-Inheritance-tp16133913p16197927.html
>> Sent from the cxf-user mailing list archive at Nabble.com.
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/Generated-Faults-and-Inheritance-tp16133913p16200381.html
Sent from the cxf-user mailing list archive at Nabble.com.