Loading ...
Sorry, an error occurred while loading the content.

10448Problems with WSDL

Expand Messages
  • umike777
    Oct 24, 2005
    • 0 Attachment
      Hello!
      I have WSDL from web-service (java) (at the end of message)

      How i can describe in WSDL (rpc/encoded)
      method with no parameters, but with return value and with header

      when i describe like this

      <wsdl:binding name="TestSoapBinding" type="impl:Test">
      <wsdlsoap:binding style="rpc"
      transport="http://schemas.xmlsoap.org/soap/http"/>
      <wsdl:operation name="getTestURL">

      <wsdlsoap:operation soapAction=""/>
      <wsdl:input name="getTestURLRequest">
      <wsdlsoap:body
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      <wsdlsoap:header
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      message="impl:getTestURLRequest"
      namespace="http:/www.site.ru/namespace/Site/Web/Test"
      part="userContext" use="encoded">
      </wsdlsoap:header>
      </wsdl:input>
      <wsdl:output name="getTestURLResponse">
      <wsdlsoap:body
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      </wsdl:output>
      <wsdl:fault name="TestException">
      <wsdlsoap:fault
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      name="TestException"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      </wsdl:fault>
      </wsdl:operation>
      </wsdl:binding>

      some toolkit like MS (wsdl.exe) ├▒reate proxy with getTestUrlRequest
      (userContext), not getTestUrlRequest()
      i see strange solution for this ... set parts="" to wsdl:input, but
      MS toolkit (wsdl.exe) don't understand this

      Thanks



      <?xml version="1.0" encoding="UTF-8"?>
      <wsdl:definitions
      targetNamespace="http:/www.site.ru/namespace/Site/Web/Test"
      xmlns:apachesoap="http://xml.apache.org/xml-soap"
      xmlns:impl="http:/www.site.ru/namespace/Site/Web/Test"
      xmlns:intf="http:/www.site.ru/namespace/Site/Web/Test"
      xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
      xmlns:tns1="http:/www.site.ru/namespace/Site/Web"
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
      xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <wsdl:types>
      <schema targetNamespace="http:/www.site.ru/namespace/Site/Web"
      xmlns="http://www.w3.org/2001/XMLSchema">
      <import namespace="http:/www.site.ru/namespace/Site/Web/Test"/>
      <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
      <complexType name="userContext">
      <sequence>
      <element name="name" nillable="true" type="xsd:string"/>
      <element name="password" nillable="true" type="xsd:string"/>
      </sequence>
      </complexType>
      <complexType name="wsException">
      <sequence>
      <element name="code" nillable="true" type="xsd:string"/>
      <element name="localMessage" nillable="true" type="xsd:string"/>
      <element name="type" nillable="true" type="xsd:string"/>
      </sequence>
      </complexType>
      <complexType name="exception">
      <complexContent>
      <extension base="tns1:wsException">
      <sequence/>
      </extension>
      </complexContent>
      </complexType>
      </schema>
      </wsdl:types>
      <wsdl:message name="getTestURLResponse">
      <wsdl:part name="getTestURLReturn" type="xsd:string"/>
      </wsdl:message>
      <wsdl:message name="getTestURLRequest">
      <wsdl:part name="userContext" type="tns1:userContext"/>
      </wsdl:message>
      <wsdl:message name="TestException">
      <wsdl:part name="fault" type="tns1:exception"/>
      </wsdl:message>
      <wsdl:portType name="Test">
      <wsdl:operation name="getTestURL" parameterOrder="userContext">
      <wsdl:input message="impl:getTestURLRequest"
      name="getTestURLRequest"/>
      <wsdl:output message="impl:getTestURLResponse"
      name="getTestURLResponse"/>
      <wsdl:fault message="impl:TestException"
      name="TestException"/>
      </wsdl:operation>
      </wsdl:portType>
      <wsdl:binding name="TestSoapBinding" type="impl:Test">
      <wsdlsoap:binding style="rpc"
      transport="http://schemas.xmlsoap.org/soap/http"/>
      <wsdl:operation name="getTestURL">
      <wsdlsoap:operation soapAction=""/>
      <wsdl:input name="getTestURLRequest">
      <wsdlsoap:body
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      <wsdlsoap:header
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      message="impl:getTestURLRequest"
      namespace="http:/www.site.ru/namespace/Site/Web/Test"
      part="userContext" use="encoded">
      </wsdlsoap:header>
      </wsdl:input>
      <wsdl:output name="getTestURLResponse">
      <wsdlsoap:body
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      </wsdl:output>
      <wsdl:fault name="TestException">
      <wsdlsoap:fault
      encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
      name="TestException"
      namespace="http:/www.site.ru/namespace/Site/Web/Test" use="encoded"/>
      </wsdl:fault>
      </wsdl:operation>
      </wsdl:binding>
      <wsdl:service name="TestService">
      <wsdl:port binding="impl:TestSoapBinding" name="Test">
      <wsdlsoap:address
      location="http://localhost:5080/web/services/Test"/>
      </wsdl:port>
      </wsdl:service>
      </wsdl:definitions>
    • Show all 5 messages in this topic