Hi Deepal. Deepal jayasinghe schrieb:
I create a POJO and deploy and I got the expected result , so will you be able to provide me more data to re-generate the issues. FYI I have attached my POJO.
I attached two WSDL files (stupid SQL wrapper plus common types and messages). The file with suffix orig is the web service which I want to implement. The file with the short filename is the specification which works. It looks like that AxisFault will only be correctly handled by the InOut message receiver. The RobustInOnly message receiver has a problem. Perhaps this has something to do with the initialization of the web server or the inheritaed classes.
BTW some details about my server implementation. I always generate the skeleton and the interface. My implementation class extends the skeleton. If I throw the custom exception (specified in the WSDL)in my implementation then his exception will be catched by the generated message receiver. This receiver packs the exception into an AxisFault and throw it again. The problem is that it looks like the handling of the RobustInOnly and InOut message receivers is different.
If you have a normal InOut receiver then you get an http 202 code plus the SOAP error. If you have RobustInOnly then you get only http 202.
Best regards Michael -- _______________________________________________________________ Michael Bell Humboldt-Universitaet zu Berlin Tel.: +49 (0)30-2093 2482 ZE Computer- und Medienservice Fax: +49 (0)30-2093 2704 Unter den Linden 6 [EMAIL PROTECTED] D-10099 Berlin _______________________________________________________________ X.509 CA Certificates / Wurzelzertifikate http://ra.pki.hu-berlin.de
<?xml version="1.0"?>
<!--
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
-->
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:huiam="http://huiam.cms.hu-berlin.de/specs/ws/common" xmlns:sync="http://huiam.cms.hu-berlin.de/specs/ws/sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/sync">
<wsdl:import namespace="http://huiam.cms.hu-berlin.de/specs/ws/common" location="../HU-IAM-WS-Common/common.wsdl"/>
<wsdl:types>
<xsd:schema targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/common">
<xsd:import namespace="http://huiam.cms.hu-berlin.de/specs/ws/common" schemaLocation="../HU-IAM-WS-Common/common.xsd" />
</xsd:schema>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/sync">
<!-- ============== -->
<!-- TYPES -->
<!-- ============== -->
<!-- SQL specific types -->
<xsd:simpleType name="SQLDatatypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="VARCHAR1"/>
<xsd:enumeration value="VARCHAR8"/>
<xsd:enumeration value="VARCHAR64"/>
<xsd:enumeration value="VARCHAR128"/>
<xsd:enumeration value="VARCHAR255"/>
<xsd:enumeration value="VARCHAR2048"/>
<xsd:enumeration value="TEXT"/>
<xsd:enumeration value="TIMESTAMP"/>
<xsd:enumeration value="DATE"/>
<xsd:enumeration value="NUMERIC"/>
<xsd:enumeration value="SEQUENCE"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="SQLColumn">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="type" type="sync:SQLDatatypeEnum"/>
<xsd:element name="value" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<!-- ============================= -->
<!-- ELEMENTS FOR MESSAGES -->
<!-- ============================= -->
<!-- SQL messages -->
<xsd:element name="insertRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="data" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="updateRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="where" type="sync:SQLColumn"/>
<xsd:element maxOccurs="unbounded" name="data" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="deleteRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="where" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="dummyResponse" type="xsd:string"/>
</xsd:schema>
</wsdl:types>
<!-- ================ -->
<!-- MESSAGES -->
<!-- ================ -->
<!-- SQL messages -->
<wsdl:message name="InsertRequestMsg">
<wsdl:part name="InsertRequestData" element="sync:insertRequest"/>
</wsdl:message>
<wsdl:message name="UpdateRequestMsg">
<wsdl:part name="UpdateRequestData" element="sync:updateRequest"/>
</wsdl:message>
<wsdl:message name="DeleteRequestMsg">
<wsdl:part name="DeleteRequestData" element="sync:deleteRequest"/>
</wsdl:message>
<wsdl:message name="DummyResponseMsg">
<wsdl:part name="DummyResponseData" element="sync:dummyResponse"/>
</wsdl:message>
<!-- ================== -->
<!-- OPERATIONS -->
<!-- ================== -->
<wsdl:portType name="wsSyncPortType">
<!-- the names for the input and output messages can be ignored -->
<!-- unfortunately the eclipse WSDL validator checks them for uniqueness -->
<!-- so we add some noise to make them unique ... -->
<!-- SQL operations -->
<!-- enforce initialization of InOut MessageReceiver -->
<wsdl:operation name="insertOperation">
<wsdl:input name="inputInsertMsg" message="sync:InsertRequestMsg"/>
<wsdl:output name="outputDummyMsg" message="sync:DummyResponseMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
<wsdl:operation name="updateOperation">
<wsdl:input name="inputUpdateMsg" message="sync:UpdateRequestMsg"/>
<wsdl:output name="outputDummyMsg" message="sync:DummyResponseMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
<wsdl:operation name="deleteOperation">
<wsdl:input name="inputDeleteMsg" message="sync:DeleteRequestMsg"/>
<wsdl:output name="outputDummyMsg" message="sync:DummyResponseMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
</wsdl:portType>
<!-- ================ -->
<!-- BINDINGS -->
<!-- ================ -->
<wsdl:binding name="wsSyncSOAP11Binding" type="sync:wsSyncPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<!-- SQL bindings -->
<wsdl:operation name="insertOperation">
<soap:operation soapAction="insertOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="updateOperation">
<soap:operation soapAction="updateOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="deleteOperation">
<soap:operation soapAction="deleteOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="wsSync">
<wsdl:port name="wsSyncPortHttp" binding="sync:wsSyncSOAP11Binding">
<soap:address location="http://localhost:8180/axis2/services/wsSyncPortType"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
<?xml version="1.0"?>
<!--
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
-->
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:huiam="http://huiam.cms.hu-berlin.de/specs/ws/common" xmlns:sync="http://huiam.cms.hu-berlin.de/specs/ws/sync" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/sync">
<wsdl:import namespace="http://huiam.cms.hu-berlin.de/specs/ws/common" location="../HU-IAM-WS-Common/common.wsdl"/>
<wsdl:types>
<xsd:schema targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/common">
<xsd:import namespace="http://huiam.cms.hu-berlin.de/specs/ws/common" schemaLocation="../HU-IAM-WS-Common/common.xsd" />
</xsd:schema>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/sync">
<!-- ============== -->
<!-- TYPES -->
<!-- ============== -->
<!-- SQL specific types -->
<xsd:simpleType name="SQLDatatypeEnum">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="VARCHAR1"/>
<xsd:enumeration value="VARCHAR8"/>
<xsd:enumeration value="VARCHAR64"/>
<xsd:enumeration value="VARCHAR128"/>
<xsd:enumeration value="VARCHAR255"/>
<xsd:enumeration value="VARCHAR2048"/>
<xsd:enumeration value="TEXT"/>
<xsd:enumeration value="TIMESTAMP"/>
<xsd:enumeration value="DATE"/>
<xsd:enumeration value="NUMERIC"/>
<xsd:enumeration value="SEQUENCE"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:complexType name="SQLColumn">
<xsd:sequence>
<xsd:element name="name" type="xsd:string"/>
<xsd:element name="type" type="sync:SQLDatatypeEnum"/>
<xsd:element name="value" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<!-- ============================= -->
<!-- ELEMENTS FOR MESSAGES -->
<!-- ============================= -->
<!-- SQL messages -->
<xsd:element name="insertRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="data" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="updateRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="where" type="sync:SQLColumn"/>
<xsd:element maxOccurs="unbounded" name="data" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="deleteRequest">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="table" type="xsd:string"/>
<xsd:element maxOccurs="unbounded" name="where" type="sync:SQLColumn"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
</wsdl:types>
<!-- ================ -->
<!-- MESSAGES -->
<!-- ================ -->
<!-- SQL messages -->
<wsdl:message name="InsertRequestMsg">
<wsdl:part name="InsertRequestData" element="sync:insertRequest"/>
</wsdl:message>
<wsdl:message name="UpdateRequestMsg">
<wsdl:part name="UpdateRequestData" element="sync:updateRequest"/>
</wsdl:message>
<wsdl:message name="DeleteRequestMsg">
<wsdl:part name="DeleteRequestData" element="sync:deleteRequest"/>
</wsdl:message>
<!-- ================== -->
<!-- OPERATIONS -->
<!-- ================== -->
<wsdl:portType name="wsSyncPortType">
<!-- the names for the input and output messages can be ignored -->
<!-- unfortunately the eclipse WSDL validator checks them for uniqueness -->
<!-- so we add some noise to make them unique ... -->
<!-- SQL operations -->
<!-- enforce initialization of InOut MessageReceiver -->
<wsdl:operation name="insertOperation">
<wsdl:input name="inputInsertMsg" message="sync:InsertRequestMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
<wsdl:operation name="updateOperation">
<wsdl:input name="inputUpdateMsg" message="sync:UpdateRequestMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
<wsdl:operation name="deleteOperation">
<wsdl:input name="inputDeleteMsg" message="sync:DeleteRequestMsg"/>
<wsdl:fault name="faultException" message="huiam:FaultMsg"/>
</wsdl:operation>
</wsdl:portType>
<!-- ================ -->
<!-- BINDINGS -->
<!-- ================ -->
<wsdl:binding name="wsSyncSOAP11Binding" type="sync:wsSyncPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<!-- SQL bindings -->
<wsdl:operation name="insertOperation">
<soap:operation soapAction="insertOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="updateOperation">
<soap:operation soapAction="updateOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
<wsdl:operation name="deleteOperation">
<soap:operation soapAction="deleteOperation"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:fault name="faultException">
<soap:body use="literal"/>
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="wsSync">
<wsdl:port name="wsSyncPortHttp" binding="sync:wsSyncSOAP11Binding">
<soap:address location="http://localhost:8180/axis2/services/wsSyncPortType"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
<?xml version="1.0"?>
<!--
xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
-->
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:huiam="http://huiam.cms.hu-berlin.de/specs/ws/common" xmlns:core="http://huiam.cms.hu-berlin.de/specs/ws/core" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/common" xmlns:xi="http://www.w3.org/2001/XInclude">
<wsdl:types>
<xsd:schema targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/common">
<xsd:import namespace="http://huiam.cms.hu-berlin.de/specs/ws/common" schemaLocation="../HU-IAM-WS-Common/common.xsd" />
</xsd:schema>
</wsdl:types>
<wsdl:message name="FaultMsg">
<wsdl:part name="fault" element="huiam:fault"/>
</wsdl:message>
</wsdl:definitions>
<?xml version="1.0"?>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://huiam.cms.hu-berlin.de/specs/ws/common" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:huiam="http://huiam.cms.hu-berlin.de/specs/ws/common">
<!-- ============== -->
<!-- TYPES -->
<!-- ============== -->
<!-- common types -->
<!-- common messages -->
<xsd:element name="fault">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="message" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
smime.p7s
Description: S/MIME Cryptographic Signature
