axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anne Thomas Manes" <atma...@gmail.com>
Subject Re: Namespace problem of Array element.
Date Tue, 27 Nov 2007 14:02:03 GMT
Please send questions related to using Axis and Axis2 to the axis-user
list. The axis-dev list is for issues related to developing the Axis
and Axis2 frameworks themselves.

Anne

On Nov 27, 2007 5:31 AM, Terry Zhou <zhouxc@gmail.com> wrote:
> Hi, all
>
> Is there any configuration to prevent the empty namespace generatation of
> array element for Axis1.4 when use basic type array with document/literal
> style? For example,
> The client soap request message is:
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:echoIntArrayResponse xmlns:ns=" http://quickstart.samples/xsd">
>          <ns:return>1</ns:return>
>          <ns:return>2</ns:return>
>          <ns:return>5</ns:return>
>          <ns:return>8</ns:return>
>          <ns:return>99</ns:return>
>       </ns:echoIntArrayResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
>
>
> and axis serve side response:
>
> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema "
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>    <soapenv:Body>
>       <aReturn xmlns=" http://math.samples">
>          <item xmlns="">1</item>
>          <item xmlns="">2</item>
>          <item xmlns="">5</item>
>          <item xmlns="">8</item>
>          <item xmlns="">99</item>
>       </aReturn>
>    </soapenv:Body>
> </soapenv:Envelope>
>
> This won't interop with some web service client for the element <item> has a
> empty namespace instead of the default one(" http://math.samples"). I have
> also tested with Axis2-1.3, it responses OK with the following message:
>
> <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/">
>    <soapenv:Body>
>       <ns:echoIntArrayResponse xmlns:ns="http://quickstart.samples/xsd">
>           <ns:return>1</ns:return>
>          <ns:return>2</ns:return>
>          <ns:return>5</ns:return>
>          <ns:return>8</ns:return>
>          <ns:return>99</ns:return>
>       </ns:echoIntArrayResponse>
>    </soapenv:Body>
> </soapenv:Envelope>
>
> So for Axis 1.4, is there any configuration to make the namespace of element
> <item> right? Thanks a lot!
>
> Terry
>
>
> FYI, WSDL file for the web service.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions
>  targetNamespace="http://math.samples/" xmlns:apachesoap="
> http://xml.apache.org/xml-soap" xmlns:impl="http://math.samples/"
> xmlns:intf="http://math.samples/" xmlns:tns1="
> http://math.samples" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd=
> "http://www.w3.org/2001/XMLSchema">
> <!--WSDL created by Apache Axis version: 1.4
> Built on Apr 22, 2006 (06:55:48 PDT)-->
>
>  <wsdl:types>
>  <schema elementFormDefault="qualified"
> targetNamespace="http://math.samples" xmlns=
> "http://www.w3.org/2001/XMLSchema">
>  <element name=
> "a">
>  <complexType>
>  <sequence>
>  <element maxOccurs
> ="unbounded" minOccurs="0" name=
> "item" type="xsd:int"/>
>  </sequence>
>
>
>  </complexType>
>  </element>
>  </schema>
>  <schema
>  elementFormDefault="qualified" targetNamespace="
> http://math.samples/" xmlns="http://www.w3.org/2001/XMLSchema">
>  <
> element name="echoIntArrayReturn">
>  <complexType>
>  <
> sequence>
>  <element maxOccurs="unbounded"
> minOccurs="0" name="item" type=
> "xsd:int"/>
>  </sequence>
>
>  </complexType>
>  </
> element>
>  </schema>
>  </wsdl:types>
>
>  <wsdl:message name=
> "echoIntArrayResponse">
>
>  <wsdl:part element="impl:echoIntArrayReturn"
> name="echoIntArrayReturn"/>
>
>  </wsdl:message>
>
>
>  <wsdl:message name="echoIntArrayRequest">
>
>  <
> wsdl:part element="tns1:a" name="a"
> />
>
>  </wsdl:message>
>
>  <wsdl:portType name="Math"
> >
>
>  <wsdl:operation name="echoIntArray" parameterOrder
> ="a">
>
>  <wsdl:input message="impl:echoIntArrayRequest"
> name="echoIntArrayRequest"/>
>
>  <
> wsdl:output message="impl:echoIntArrayResponse" name="echoIntArrayResponse"
> />
>
>  </wsdl:operation>
>
>  </wsdl:portType>
>
>  <wsdl:binding
>  name="MathSoapBinding" type="impl:Math">
>
>
>  <wsdlsoap:binding style="document" transport=
> "http://schemas.xmlsoap.org/soap/http"/>
>
>  <wsdl:operation
>  name="echoIntArray">
>
>  <wsdlsoap:operation soapAction=
> ""/>
>
>  <wsdl:input name="echoIntArrayRequest"
> >
>
>  <wsdlsoap:body use="literal"/>
>
>
>  </wsdl:input>
>
>  <wsdl:output name="echoIntArrayResponse"
> >
>
>  <wsdlsoap:body use="literal"/>
>
>
>  </wsdl:output>
>
>  </wsdl:operation>
>
>  </wsdl:binding>
>
>  <
> wsdl:service name="MathService">
>
>  <wsdl:port
>  binding="impl:MathSoapBinding" name="Math">
>
>  <
> wsdlsoap:address location="http://localhost:8080/axis/services/Math"
> />
>
>  </wsdl:port>
>
>  </wsdl:service>
>
> </wsdl:definitions>
>
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Mime
View raw message