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 Cun Yong Tan <cy...@hotmail.com> on 2002/04/03 21:33:14 UTC
Map type and .NET interoperability
Hello,
I have an Axis service that have a single method that returns a Map:
public class ss
{
public Map echoMap()
{
HashMap mapOut = new HashMap();
mapOut.put("key", "value");
return mapOut;
}
}
.NET's wsdl.exe tool is not able to generate a client proxy from
the WSDL for this service. The WSDL (show below) was generated by
http://localhost:8080/axis/services/ss?wsdl.
Has anyone else have interoperability problems with using Java Map as
parameter and/or return value ? Is the Map type an Axis only thing ?
Thanks for any help or workarounds.
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
targetNamespace="http://localhost:8080/axis/services/ss"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:impl="http://localhost:8080/axis/services/ss-impl"
xmlns:intf="http://localhost:8080/axis/services/ss"
xmlns:tns1="http://xml.apache.org/xml-soap"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<types>
<schema targetNamespace="http://xml.apache.org/xml-soap"
xmlns="http://www.w3.org/2001/XMLSchema">
<complexType name="Map">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="item">
<complexType>
<all>
<element name="key" type="xsd:anyType"/>
<element name="value" type="xsd:anyType"/>
</all>
</complexType>
</element>
</sequence>
</complexType>
<element name="Map" nillable="true" type="tns1:Map"/>
</schema>
</types>
<wsdl:message name="echoMapResponse">
<wsdl:part name="return" type="tns1:Map"/>
</wsdl:message>
<wsdl:message name="echoMapRequest">
</wsdl:message>
<wsdl:portType name="ss">
<wsdl:operation name="echoMap">
<wsdl:input message="intf:echoMapRequest"/>
<wsdl:output message="intf:echoMapResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="ssSoapBinding" type="intf:ss">
<wsdlsoap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="echoMap">
<wsdlsoap:operation soapAction=""/>
<wsdl:input>
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:8080/axis/services/ss" use="encoded"/>
</wsdl:input>
<wsdl:output>
<wsdlsoap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://localhost:8080/axis/services/ss" use="encoded"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="ssService">
<wsdl:port binding="intf:ssSoapBinding" name="ss">
<wsdlsoap:address location="http://localhost:8080/axis/services/ss"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
_________________________________________________________________
MSN Photos is the easiest way to share and print your photos:
http://photos.msn.com/support/worldwide.aspx