You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by cm...@integro.com on 2002/11/17 19:27:30 UTC
RPC Service with Encoded Input and Literal Output
Does anyone know if it is possible to configure Axis with an RPC style
service that has an "encoded" input and a "literal" output. Here's an
example .wsdl snippet of what I'm trying to do:
<binding name='NetworkNodeBinding' type='tns:NetworkNodePortType' >
<soap:binding style='rpc'
transport='http://schemas.xmlsoap.org/soap/http' />
<operation name='SQLQuery' >
<soap:operation soapAction='' />
<input>
<soap:body use='encoded' namespace='urn:MyNamespace'
encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' />
</input>
<output>
<soap:body use='literal' namespace='urn:MyNamespace'
encodingStyle='' />
</output>
</operation>
</binding>
WSDL2Java generates the following service tag:
<service name="NetworkNodePortType" provider="java:RPC" style="rpc"
use="literal">
However, this causes my input to be treated as literal also (thus causing
clients expecting it to be "encoded" to fail). I modified the use to be
"encoded" to get most of my methods working. Is there a way to configure
the service to use="mixed" or something then specify for each
input/output whether it is encoded or literal?
I've messed around with making my return type for my method Element[] and
changing the Service Description in my generated skeleton class, but it
still treats the result as "encoded"?