Thanks Sanjay. I'll give this a try.
Steve Pannier
> AFAIK, message style service supports only a single
> operation. Since you are using message style service
> and are willing to deal with raw XML one possible
> solution would be to examine the child element of SOAP
> body and do your own dispatching based on it: your
> WSDL would define multiple operations but the service
> implentation would have only one operation. Since you
> are using DOC/Lit, you need to define your WSDL so
> that for every operation the corresponding SOAP body
> would have unique qname for the child element.
>
> Sanjay
>
> --- Steve Pannier <[EMAIL PROTECTED]>
> wrote:
> > I'm using Message style, and when I have one method
> > defined
> > everything works OK. But, when I add another method
> > to my
> > service, I get the following exception:
> >
> > Couldnt find an appropriate operation for XML QName
> > {0}
> >
> > I've searched the mailing list for information
> > regarding this, and
> > found a comment that Message style supports only one
> > method
> > (i.e. operation) per service. Is this true?
> >
> > Or is there a way for me to somehow indicate the
> > operation name
> > in the Soap request for Message style services?
> >
> >
> > Here is the WSDL:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <wsdl:definitions
> > targetNamespace="http://DocStyle.test.com"
> >
> > xmlns="http://schemas.xmlsoap.org/wsdl/"
> >
> > xmlns:apachesoap="http://xml.apache.org/xml-soap"
> >
> > xmlns:impl="http://DocStyle.test.com"
> >
> > xmlns:intf="http://DocStyle.test.com"
> >
> >
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> >
> > 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://DocStyle.test.com"
> > xmlns="http://www.w3.org/2001/XMLSchema">
> > <import
> >
> namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
> > <xsd:element name="JISoapHeader">
> > <xsd:complexType>
> > <xsd:sequence>
> > <xsd:element name="configFile" nillable="true"
> > type="xsd:string"/>
> > <xsd:element name="sessionName"
> > nillable="true" type="xsd:string"/>
> > </xsd:sequence>
> > </xsd:complexType>
> > </xsd:element>
> > <xsd:element name="StockSymbol_XSD"
> > type="xsd:string">
> > </xsd:element>
> > <xsd:element name="StockPrice_XSD"
> > type="xsd:string">
> > </xsd:element>
> > </schema>
> > </wsdl:types>
> >
> > <wsdl:message name="JIHeaderRequest">
> > <wsdl:part element="intf:JISoapHeader"
> > name="JIHeader"/>
> > </wsdl:message>
> >
> > <wsdl:message name="stockQuoteRequest">
> > <wsdl:part element="intf:StockSymbol_XSD"
> > name="InVar_0"/>
> > </wsdl:message>
> >
> > <wsdl:message name="stockQuoteResponse">
> > <wsdl:part element="intf:StockPrice_XSD"
> > name="OutVar_0"/>
> > </wsdl:message>
> >
> > <wsdl:portType name="DocStyleImpl">
> > <wsdl:operation name="stockQuote"
> > parameterOrder="InVar_0">
> > <wsdl:input
> > message="intf:stockQuoteRequest"
> > name="stockQuoteRequest"/>
> > <wsdl:output
> > message="intf:stockQuoteResponse"
> > name="stockQuoteResponse"/>
> > </wsdl:operation>
> > </wsdl:portType>
> >
> > <wsdl:binding name="DocStyle"
> > type="intf:DocStyleImpl">
> > <wsdlsoap:binding style="document"
> >
> > transport="http://schemas.xmlsoap.org/soap/http"/>
> > <wsdl:operation name="stockQuote">
> > <wsdlsoap:operation soapAction=""/>
> > <wsdl:input name="stockQuoteRequest">
> > <wsdlsoap:body
> > namespace="http://DocStyle.test.com" use
> > ="literal"/>
> > <wsdlsoap:header
> > message="intf:JIHeaderRequest"
> >
> > namespace="http://DocStyle.test.com"
> > part="JIHeader"
> > use="literal">
> > </wsdlsoap:header>
> > </wsdl:input>
> > <wsdl:output name="stockQuoteResponse">
> > <wsdlsoap:body
> > namespace="http://DocStyle.test.com" use
> > ="literal"/>
> > </wsdl:output>
> > </wsdl:operation>
> > </wsdl:binding>
> >
> > <wsdl:service name="DocStyle">
> > <wsdl:port binding="intf:DocStyle"
> > name="DocStylePort">
> > <wsdlsoap:address location
> > ="http://localhost:8091/axis/services/DocStyle"/>
> > </wsdl:port>
> > </wsdl:service>
> > </wsdl:definitions>
> >
> >
> > Here is my WSDD with the 2nd method defined in
> > allowedMethods:
> >
> > <deployment
> > xmlns="http://xml.apache.org/axis/wsdd/"
> >
> >
> xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
> >
> > <service name="DocStyle" provider="Handler"
> > style="message">
> > <wsdlFile>/DocStyle.wsdl</wsdlFile>
> > <parameter name="className" value
> > ="com.test.DocStyle.DocStyleImpl"/>
> > <parameter name="handlerClass"
> > value="com.test.MyMsgProvider"/>
> > <parameter name="allowedMethods"
> > value="MyDebug stockQuote"/>
> > </service>
> > </deployment>
> >
> >
> > Here is the request my .NET client is generating,
> > which results in the
> > above exception:
> >
> > <?xml version="1.0" encoding="utf-8"?>
> > <soap:Envelope
> >
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
> >
> >
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> >
> > xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> > <soap:Body>
> > <StockSymbol_XSD
> >
> >
> xmlns="http://DocStyle.test.com">XYZ</StockSymbol_XSD>
> > </soap:Body>
> > </soap:Envelope>
> >
> >
> > Regards.
> >
> > Steve Pannier
> >
> >
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! SiteBuilder - Free, easy-to-use web site design software
> http://sitebuilder.yahoo.com
>