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 Daniel Hägg <da...@factum.se> on 2002/09/18 13:24:31 UTC
WSDL2Java namespace problem
[Re-posted with new subject]
Hi!
I am trying to develop a client for an existing SOAP server using Axis RC1.
I have a problem with complex return values. They all end up as null.
I have developed the client by trying to write a valid WSDL file and
running WSDL2Java. The SOAP server was invented before WSDL,
so I am making the WSDL file up as I go along.
When I step inside the binding stub (generated by WSDL2Java) I find that
the return value has been successfully decoded. It is contained in the Map
returned by _call.getOutputParams(). However, the binding stub uses an
empty
namespace when it tries to look up the return value in the Map, and the
return value is stored with the namespace "factum.se/dab" as key. The
result is that
the return value is not found and null is returned to my client
application.
How can I make the binding stub use the correct namespace?
The start of my WSDL file looks like this:
<definitions
xmlns:http= "http://schemas.xmlsoap.org/wsdl/http/"
xmlns:soap= "http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:s= "http://www.w3.org/2001/XMLSchema"
xmlns:s0="factum.se/dab"
xmlns:soapenc= "http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="factum.se/dab"
targetNamespace="factum.se/dab"
xmlns= "http://schemas.xmlsoap.org/wsdl/" >
<types>
<s:schema targetNamespace="factum.se/dab">
<s:complexType name="Entry">
<s:sequence>
<s:element name="time" type="s:dateTime"/>
<s:element name="configuration" type="s:string"/>
</s:sequence>
</s:complexType>
</s:schema>
</types>
<message name="RequestBook">
<part name="Entry" type="s0:Entry"/>
</message>
<message name="BookResponse">
<part name="Entry" type="s0:Entry"/>
</message>
The SOAP response looks like this:
<SOAP-ENV:Envelope
xmlns="factum.se/dab"
xmlns:DAB="factum.se/dab"
xmlns:xsd= "http://www.w3.org/2001/XMLSchema"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENV= "http://schemas.xmlsoap.org/soap/envelope/" >
<SOAP-ENV:Header/>
<SOAP-ENV:Body
xmlns:SOAP-ENC= "http://schemas.xmlsoap.org/soap/encoding/"
SOAP-ENV:encodingStyle= "http://schemas.xmlsoap.org/soap/encoding/" >
<BookResponse>
<Entry xsi:type="DAB:Entry">
<time xsi:type="xsd:dateTime">2002-09-11T13:14:24Z</time>
<configuration xsi:type="xsd:string"><![CDATA[Kalle]]></configuration>
</Entry>
</BookResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Is there something wrong with the WSDL or is it a bug in WSDL2Java ?
/
/ Daniel