Yea, this won't work. There is nothing on the wire to indicate which method
to call. Basically, the soap:body is empty so we pretty much just grab one
of the methods that will work for that.
Technically, this wsdl is not WSI-BP compliant at all and the tools should
probably flag it. The request messages need to have a part that points to a
unique element. Example:
<element name="CustomerRequest">
<complexType>
<sequence/>
</complexType>
</element>
<message name="CustomerRequest">
<part name="parameters" element="tns:CustomerRequest"/>
</message>
Dan
On Tuesday 23 September 2008 2:25:59 pm [EMAIL PROTECTED] wrote:
> Hi,
>
> I have 3 operations A, B, C, with an empty parameterlist.
> Whichever Webmethod I call, at the serverside always the same webmethod is
> called. How can I solve this?
>
> Here are parts of my WSDL from which I generate my classes:
>
>
> <element name="ArrayOfCustomers">
> <complexType>
> <sequence>
> <element name="Customer" minOccurs="0"
> maxOccurs="unbounded"
> type="tns:Customer"/> </sequence>
> </complexType>
> </element>
>
> <complexType name="Customer">
> <sequence>
> <element name="name" type="string"/>
> <element name="street" type="string"/>
> <element name="city" type="string"/>
> </sequence>
> </complexType>
>
> <element name="ShopException" type="xsd:string"/>
>
> /schema>
> </types>
>
> <message name="CustomerRequest"/>
> <message name="CustomerResponse">
> <part name="result" element="tns:ArrayOfCustomers"/>
> </message>
>
> <message name="HandlerRequest"/>
> <message name="HandlerResponse">
> <part name="result" element="tns:ArrayOfHandlers"/>
> </message>
>
> <message name="ShopException">
> <part name="ShopException" element="tns:ShopException"/>
> </message>
>
>
> <portType name="RequestPortType">
> <operation name="getCustomers">
> <input message="tns:CustomerRequest"/>
> <output message="tns:CustomerResponse"/>
> <fault name="ShopException"
> message="tns:ShopException"/>
> </operation>
> <operation name="getHandlers">
> <input message="tns:HandlerRequest"/>
> <output message="tns:HandlerResponse"/>
> <fault name="ShopException"
> message="tns:ShopException"/>
> </operation>
>
> the WSDL is literal/document one.
--
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog