Hi Deepal, I followed you instructions but still Axis 2.0 completely changes my WSDL, adding unnecessary bindings and changing message parts' names. This is the original WSDL:
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" targetNamespace="http://tempuri.org/"> <wsdl:types> <xsd:schema elementFormDefault="qualified" targetNamespace="http://tempuri.org/"> <xsd:element name="TestProc" type="tns:TestProc"/> <xsd:complexType name="TestProc"> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" name="Addresses" type="xsd:string"/> <xsd:element maxOccurs="1" minOccurs="0" name="Birthday" type="xsd:dateTime"/> <xsd:element maxOccurs="1" minOccurs="0" name="Age" type="xsd:integer"/> <xsd:element maxOccurs="1" minOccurs="0" name="isMale" type="xsd:boolean"/> </xsd:sequence> </xsd:complexType> <xsd:element name="TestProcResponse" type="tns:TestProcResponse"/> <xsd:complexType name="TestProcResponse"> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" name="Person" type="tns:Person"/> </xsd:sequence> </xsd:complexType> <xsd:complexType name="Person"> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" name="Birthday" type="xsd:dateTime"/> <xsd:element maxOccurs="unbounded" minOccurs="0" name="Addresses" type="xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:schema> </wsdl:types> <wsdl:message name="TestProcInput"> <wsdl:part element="tns:TestProc" name="parameters"/> </wsdl:message> <wsdl:message name="TestProcOutput"> <wsdl:part element="tns:TestProcResponse" name="parameters"/> </wsdl:message> <wsdl:portType name="Test_TestGroupPortType"> <wsdl:operation name="TestProc"> <wsdl:input message="tns:TestProcInput"/> <wsdl:output message="tns:TestProcOutput"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="Test_TestGroupSoapBinding" type="tns:Test_TestGroupPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="TestProc"> <soap:operation soapAction="http://tempuri.org/TestProc"/> <wsdl:input> <soap:body use="literal"/> </wsdl:input> <wsdl:output> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="Test_TestGroup"> <wsdl:port binding="tns:Test_TestGroupSoapBinding" name="Test_TestGroupPort"> <soap:address location="dummyaddress"/> </wsdl:port> </wsdl:service> </wsdl:definitions> And this is the same WSDL when accessed through the services list that Axis2 exposes: <wsdl:definitions xmlns:tns="http://tempuri.org/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://tempuri.org/"> <wsdl:documentation>Test_TestGroup</wsdl:documentation> <wsdl:types> <xsd:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://tempuri.org/"> <xsd:element name="TestProc" type="tns:TestProc" /> <xsd:complexType name="TestProc"> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" name="Addresses" type="xsd:string" /> <xsd:element minOccurs="0" name="Birthday" type="xsd:dateTime" /> <xsd:element minOccurs="0" name="Age" type="xsd:integer" /> <xsd:element minOccurs="0" name="isMale" type="xsd:boolean" /> </xsd:sequence> </xsd:complexType> <xsd:element name="TestProcResponse" type="tns:TestProcResponse" /> <xsd:complexType name="TestProcResponse"> <xsd:sequence> <xsd:element minOccurs="0" name="Person" type="tns:Person" /> </xsd:sequence> </xsd:complexType> <xsd:complexType name="Person"> <xsd:sequence> <xsd:element minOccurs="0" name="Birthday" type="xsd:dateTime" /> <xsd:element maxOccurs="unbounded" minOccurs="0" name="Addresses" type="xsd:string" /> </xsd:sequence> </xsd:complexType> </xsd:schema> </wsdl:types> <wsdl:message name="TestProcInput"> <wsdl:part name="part1" element="tns:TestProc" /> </wsdl:message> <wsdl:message name="TestProcOutput"> <wsdl:part name="part1" element="tns:TestProcResponse" /> </wsdl:message> <wsdl:portType name="Test_TestGroupPortType"> <wsdl:operation name="TestProc"> <wsdl:input xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="tns:TestProcInput" wsaw:Action="http://tempuri.org/TestProc" /> <wsdl:output xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" message="tns:TestProcOutput" wsaw:Action="http://tempuri.org/Test_TestGroupPortType/TestProcResponse" /> </wsdl:operation> </wsdl:portType> <wsdl:binding name="Test_TestGroupSOAP11Binding" type="tns:Test_TestGroupPortType"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="TestProc"> <soap:operation soapAction="http://tempuri.org/TestProc" style="document" /> <wsdl:input> <soap:body use="literal" /> </wsdl:input> <wsdl:output> <soap:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="Test_TestGroupSOAP12Binding" type="tns:Test_TestGroupPortType"> <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> <wsdl:operation name="TestProc"> <soap12:operation soapAction="http://tempuri.org/TestProc" style="document" /> <wsdl:input> <soap12:body use="literal" /> </wsdl:input> <wsdl:output> <soap12:body use="literal" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="Test_TestGroupHttpBinding" type="tns:Test_TestGroupPortType"> <http:binding verb="POST" /> <wsdl:operation name="TestProc"> <http:operation location="TestProc" /> <wsdl:input> <mime:content type="text/xml" /> </wsdl:input> <wsdl:output> <mime:content type="text/xml" /> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="Test_TestGroup"> <wsdl:port name="Test_TestGroupSOAP11port_http" binding="tns:Test_TestGroupSOAP11Binding"> <soap:address location="http://10.62.20.126:2380/applinx/services/Test_TestGroup" /> </wsdl:port> <wsdl:port name="Test_TestGroupSOAP12port_http" binding="tns:Test_TestGroupSOAP12Binding"> <soap12:address location="http://10.62.20.126:2380/applinx/services/Test_TestGroup" /> </wsdl:port> <wsdl:port name="Test_TestGroupHttpport0" binding="tns:Test_TestGroupHttpBinding"> <http:address location="http://10.62.20.126:2380/rest/Test_TestGroup" /> </wsdl:port> </wsdl:service> </wsdl:definitions> Regards, Shahar Kedar -----Original Message----- From: Deepal Jayasinghe [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 13, 2006 7:33 AM To: [email protected] Subject: Re: [AXIS2] Issue with WSDL generated by AXIS2 Hi Charak; >Hi , >Please look the following WSDL bindings. >Why does AXIS places axis2.war in SOAP end points, where as "rest" binding is >fine. This is happening if you deploy aar files on WebSphere. > >Can I enforce AXIS2 to not generate WSDL's and read only the WSDL which I >supply. > > > Yes , you can do that ; - First put your wsdl into meta-inf directory - Then add the following attribute into services.xml <parameter name="useOriginalwsdl">true</parameter> ><wsdl:port name="TestServiceSOAP11port_http" >binding="ns:TestServiceSOAP11Binding"> ><soap:address >location="http://208.49.76.165:9080/axis2.war/services/TestService"/> ></wsdl:port> >− > <wsdl:port name="TestServiceSOAP12port_http" > binding="ns:TestServiceSOAP12Binding"> ><soap12:address >location="http://208.49.76.165:9080/axis2.war/services/TestService"/> ></wsdl:port> >− > <wsdl:port name="TestServiceHttpport0" > binding="ns:TestServiceHttpBinding"> ><http:address location="http://208.49.76.165:9080/rest/TestService"/> ></wsdl:port> > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
