It is the option in server-config.wsdd file

<globalConfiguration>
   <parameter name="sendMultiRefs" value="false"/>
...
</globalConfiguration>
 
-Venky


-----Original Message-----
From: Alex Chen [mailto:[EMAIL PROTECTED] 
Sent: Saturday, June 05, 2004 6:17 PM
To: [EMAIL PROTECTED]
Subject: Disable multiref on the server side


I am using AXIS (Java, as a server) and gSOAP (C, as a client) in RPC
style communication.

If the encoding style is set to
<soap:body use="encoded"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"; .../>

gSOAP client is able to send a SOAP object (C structure on the client
side) to the AXIS, and the server is able to deserialize the message
into the binding class generated from the WSDL. But when the server
returns a SOAP object, the XML message contains 'multiref id=' tags in
the message body.  This causes the gSOAP client to choke because it
cannot decode it.

I also find that if the encoding style is set to
<soap:body use="literal" />

the XML message generated by the AXIS server will not have 'multiref'
tag. But if the client (gSOAP side) sends a SOAP object, as in the above
case, the AXIS server cannot decode the message, because the gSOAP puts
namespace tags and other stuff in the message it generates.

In a nutshell, in 'encoded' case, AXIS can decode messages in encode
style, but generated messages with 'multiref' tags.  In 'literal' case,
AXIS does not generate messages with 'multiref' tags but fails to decode
messages that are in 'encoded' form.

I have looked at the mailing archive and only find discussion in
disabling the PROP_DOMULTIREF property on the client side.  How do I
turn off this property on the AXIS server side so that it does not
generate multiref tag in the reply message?

Any help is greatly appreciated.

Alex

Reply via email to