[jira] Commented: (AXIS-1739) Bad part name in axis server response in document/literal style.

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] Commented: (AXIS-1739) Bad part name in axis server response in document/literal style.

JIRA axis-dev@ws.apache.org
     [ http://issues.apache.org/jira/browse/AXIS-1739?page=comments#action_64735 ]
     
Ephemeris Lappis commented on AXIS-1739:
----------------------------------------

I've posted a request for comment to the JOnAS list with a link to this issue...

Just a question : as my test service is very simple, and just uses primitive XSD string type, no custom data handler is required. Why the AXIS server in this case should need more information than the WSDL descriptor to parse requests or generate responses ?

I'll come back when i get some new information from the JOnAS side, if any...

> Bad part name in axis server response in document/literal style.
> ----------------------------------------------------------------
>
>          Key: AXIS-1739
>          URL: http://issues.apache.org/jira/browse/AXIS-1739
>      Project: Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: 1.2 Beta, 1.2RC2
>  Environment: Windows 2K SP4 / Ant 1.6 within Eclipse 3.0.1
> JDK 1.4.2_01-b06
>     Reporter: Ephemeris Lappis
>     Assignee: Glen Daniels
>  Attachments: deploy-server-0.wsdd, j2me05ws.wsdl, j2me05ws.wsdl
>
> Few days ago, i had posted this note to the mailing list to try to have a feedback, but as there is no echo, i copy it as a new report.
> All my last tests around document/literal style let me with troubles. To
> start again with simple things, i have made a basic service to evaluate the
> primary interoperability with my J2ME client. This simple service provides a
> single operation that takes a string, reverses it and returns it.
> On the client side, i work with the SUN Wireless toolkit that support the
> JSR172 (web-service for J2ME). Using the axis wsdl i have successfully
> generated the j2me client stubs, and built my midlet to call the web
> service. At run time, the client reports an error in the server response :
> the name of the response part for the return value is not as defined in the
> wsdl descriptor. To be sure, i had made the test again putting the tcp
> monitor in the middle... and it seems the client is right !
> The name of the part in the wsdl is 'reverseReturn' and axis uses
> 'in0Return'...
> Is it a bug, or just another mis-interpretation of mine ?
> Thanks to give your opinion and confirm, or not, it is actually a bug...
> Here the java code :
> --- java interface ---
> package net.moon.me.five.ws;
> import java.rmi.Remote;
> import java.rmi.RemoteException;
> public interface StringTool extends Remote {
> public String reverse(String string) throws RemoteException;
> }
> ----------------------
> I have successfully generated the wsdl with the following ant script :
> --- wsdl2java ant script ---
> <property name="my.namespace" value="http://ws.moon.net/j2me05" />
> <java2wsdl output="./wsdl/j2me05ws.wsdl"
>            className="net.moon.me.five.ws.StringTool"
>            namespace="${my.namespace}"
>            porttypename="StringUtility"
>            serviceportname="StringUtilityPort"
>            serviceelementname="J2ME05"
>            style="DOCUMENT"
>            location="http://ws.moon.net/j2me05">
> <classpath>
> <pathelement location="${my.services.compile-directory}" />
> <path refid="my.axis.classpath" />
> </classpath>
> </java2wsdl>
> ----------------------------
> The resulting WSDL, with the expected part names !
> --- WSDL ---
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://ws.moon.net/j2me05"
> xmlns:impl="http://ws.moon.net/j2me05"
> xmlns:intf="http://ws.moon.net/j2me05"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
> <!--WSDL created by Apache Axis version: 1.2RC2
> Built on Nov 16, 2004 (12:19:44 EST)-->
>  <wsdl:types>
>   <schema xmlns="http://www.w3.org/2001/XMLSchema"
> targetNamespace="http://ws.moon.net/j2me05" elementFormDefault="qualified">
>    <element name="in0" type="xsd:string"/>
>    <element name="reverseReturn" type="xsd:string"/>
>   </schema>
>  </wsdl:types>
>    <wsdl:message name="reverseRequest">
>       <wsdl:part name="in0" element="impl:in0"/>
>    </wsdl:message>
>    <wsdl:message name="reverseResponse">
>       <wsdl:part name="reverseReturn" element="impl:reverseReturn"/>
>    </wsdl:message>
>    <wsdl:portType name="StringUtility">
>       <wsdl:operation name="reverse" parameterOrder="in0">
>          <wsdl:input name="reverseRequest" message="impl:reverseRequest"/>
>          <wsdl:output name="reverseResponse"
> message="impl:reverseResponse"/>
>       </wsdl:operation>
>    </wsdl:portType>
>    <wsdl:binding name="StringUtilityPortSoapBinding"
> type="impl:StringUtility">
>       <wsdlsoap:binding style="document"
> transport="http://schemas.xmlsoap.org/soap/http"/>
>       <wsdl:operation name="reverse">
>          <wsdlsoap:operation soapAction=""/>
>          <wsdl:input name="reverseRequest">
>             <wsdlsoap:body use="literal"/>
>          </wsdl:input>
>          <wsdl:output name="reverseResponse">
>             <wsdlsoap:body use="literal"/>
>          </wsdl:output>
>       </wsdl:operation>
>    </wsdl:binding>
>    <wsdl:service name="J2ME05">
>       <wsdl:port name="StringUtilityPort"
> binding="impl:StringUtilityPortSoapBinding">
>          <wsdlsoap:address location="http://ws.moon.net/j2me05"/>
>       </wsdl:port>
>    </wsdl:service>
> </wsdl:definitions>
> -------------------------------------
> And now, the dumped http request and response :
> --- request ---
> POST /j2me05ws-ejb/J2ME-05-WS/J2ME05WS HTTP/1.1
> User-Agent: Profile/MIDP-1.0 Configuration/CLDC-1.0
> Content-Language: en-US
> Content-Type: text/xml
> SOAPAction: "
> Content-Length: 315
> Host: localhost
> <?xml version="1.0" encoding="utf-8"?>
>    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:tns="http://ws.moon.net/j2me05">
>       <soap:Body>
>          <tns:in0>ABC</tns:in0>
>       </soap:Body>
>    </soap:Envelope>
> ---------------
> --- response ---
> HTTP/1.1 200 OK
> Set-Cookie: JSESSIONID=75C329A6CED0EE74D896E083043AFA0A; Path=/j2me05ws-ejb
> Content-Type: text/xml;charset=utf-8
> Transfer-Encoding: chunked
> Date: Tue, 21 Dec 2004 14:15:18 GMT
> Server: Apache-Coyote/1.1
> 123
> <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>
>       <in0Return xmlns="http://ws.moon.net/j2me05">CBA</in0Return>
>    </soapenv:Body></soapenv:Envelope>
> 0
> ----------------

--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira