axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tom Jordahl (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AXIS2-763) Code generated by WSDL2 Java expects a return element that does not exist in the WSDL nor in the return message.
Date Tue, 23 May 2006 17:31:30 GMT
    [ http://issues.apache.org/jira/browse/AXIS2-763?page=comments#action_12412961 ] 

Tom Jordahl commented on AXIS2-763:
-----------------------------------

Two things:

1. If the WSDL is rpc/encoded then Axis2 should *definitely* print a clear and early warning
that we don't support this type of WSDL and generate NO code.

2. The Axis2 team is probably going to have to fully support rpc/encoded services as a client.


> Code generated by WSDL2 Java expects a return element that does not exist in the WSDL
nor in the return message.
> ----------------------------------------------------------------------------------------------------------------
>
>          Key: AXIS2-763
>          URL: http://issues.apache.org/jira/browse/AXIS2-763
>      Project: Apache Axis 2.0 (Axis2)
>         Type: Bug

>   Components: wsdl
>     Versions: 1.0
>  Environment: Affects version "Apache Axis2 1.0 build (May 5, 2006)"
>     Reporter: Sid Remey
>     Priority: Critical

>
> I get the error below when I try to invoke the Echo web-service (see WSDL) using Axis2
with code generated by WSDL2Java.  
> The invocation is successful and a valid reply is received.  However, the generated code,
when parsing the reply, seems to expect an element that does not exist; namely EchoResponse.
> Thanks.
> ============================================================================
> <<<<<  The Error >>>>>>
> java.lang.RuntimeException: java.lang.RuntimeException: Unexpected subelement return
> 	at com.xxx.axis2.SampleConnectorV2Stub.fromOM(SampleConnectorV2Stub.java:900)
> 	at com.xxx.axis2.SampleConnectorV2Stub.Echo(SampleConnectorV2Stub.java:141)
> 	at com.xxx.axis2.SampleTest.testEcho(SampleTest.java:40)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
> 	at java.lang.reflect.Method.invoke(Unknown Source)
> 	at junit.framework.TestCase.runTest(TestCase.java:154)
> ============================================================================
> <<<<<  Message Sent  >>>>>>
> 1328 [main] DEBUG httpclient.wire.header  - >> "POST /Invoke?Handler=SampleConnectorV2
HTTP/1.1[\r][\n]"
> 1500 [main] DEBUG httpclient.wire.header  - >> "User-Agent: Axis/2.0[\r][\n]"
> 1500 [main] DEBUG httpclient.wire.header  - >> "SOAPAction: #Echo[\r][\n]"
> 1500 [main] DEBUG httpclient.wire.header  - >> "Host: xxx.xxx.xxx.xxx:pppp[\r][\n]"
> 1500 [main] DEBUG httpclient.wire.header  - >> "Content-Length: 270[\r][\n]"
> 1516 [main] DEBUG httpclient.wire.header  - >> "Content-Type: text/xml; charset=UTF-8[\r][\n]"
> 1516 [main] DEBUG httpclient.wire.header  - >> "[\r][\n]"
> 1516 [main] DEBUG httpclient.wire.content  - >> "<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header /><soapenv:Body><ns1:Echo
xmlns:ns1="urn:SampleConnector"><message>Hello World!</message></ns1:Echo></soapenv:Body></soapenv:Envelope>"
> ============================================================================
> <<<<<  Reply Received  >>>>>>
> 1985 [main] DEBUG httpclient.wire.header  - << "HTTP/1.1 200 OK[\r][\n]"
> 2000 [main] DEBUG httpclient.wire.header  - << "Server: ATL Server - SoapTransport
Sample HTTP Listener[\r][\n]"
> 2000 [main] DEBUG httpclient.wire.header  - << "Date: Mon, 22 May 2006 12:27:11
GMT[\r][\n]"
> 2000 [main] DEBUG httpclient.wire.header  - << "Content-Type: text/xml[\r][\n]"
> 2000 [main] DEBUG httpclient.wire.header  - << "Content-Length: 417[\r][\n]"
> 2032 [main] DEBUG httpclient.wire.content  - << "<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"><soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><snp:Echo
xmlns:snp="urn:SampleConnector"><return>Hello World!</return></snp:Echo></soap:Body></soap:Envelope>"
> ============================================================================
> <<<<<  WDSL  >>>>>>
> <?xml version="1.0"?>
> <definitions 
>     xmlns:s="http://www.w3.org/2001/XMLSchema" 
>     xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" 
>     xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" 
>     xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
>     xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" 
>     xmlns:s0="urn:SampleConnector" 
>     xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
>     xmlns:atls="http://tempuri.org/vc/atl/server/"
>     targetNamespace="urn:SampleConnector" 
>     xmlns="http://schemas.xmlsoap.org/wsdl/"
> >
>     <message name="EchoIn">
>         <part name="message" type="s:string"/>
>     </message>
>     <message name="EchoOut">
>         <part name="return" type="s:string"/>
>     </message>
>     <portType name="SampleConnectorV2Soap">
>         <operation name="Echo">
>             <input message="s0:EchoIn"/>
>             <output message="s0:EchoOut"/>
>         </operation>
>     </portType>
>     <binding name="SampleConnectorV2Soap" type="s0:SampleConnectorV2Soap">
>         <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
>         <operation name="Echo">
>             <soap:operation soapAction="#Echo" style="rpc"/>
>             <input>
>                 <soap:body use="encoded" namespace="urn:SampleConnector" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>             </input>
>             <output>
>                 <soap:body use="encoded" namespace="urn:SampleConnector" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
>             </output>
>         </operation>
>     </binding>
>     
>     <service name="SampleConnectorV2">
>         <port name="SampleConnectorV2Soap" binding="s0:SampleConnectorV2Soap">
>             <soap:address location="http://xxx.xxx.xxx.xxx:pppp/Invoke?Handler=SampleConnectorV2"/>
>         </port>
>     </service>
>     
> </definitions>
> ============================================================================
> <<<<<  Generated Code that Fails >>>>>>
> public static EchoResponse parse(javax.xml.stream.XMLStreamReader reader) throws java.lang.Exception{
>     EchoResponse object = new EchoResponse();
>     int event;
>     
>     try {
>         while (!reader.isStartElement() && !reader.isEndElement())
>             reader.next();
>         while (!reader.isStartElement() && !reader.isEndElement())
>             reader.next();
>         if (reader.isStartElement() && new javax.xml.namespace.QName("urn:SampleConnector","EchoResponse").equals(reader.getName())){
>             object.setEchoResponse(EchoOut.Factory.parse(reader));
>         }  // End of if for expected property start element
>         else{
>             // A start element we are not expecting indicates an invalid parameter was
passed
> --->>>>>>>> throw new java.lang.RuntimeException("Unexpected
subelement " + reader.getLocalName());  <<<<<---- EXCEPTION THROWN HERE !!!!
>         }
>     } catch (javax.xml.stream.XMLStreamException e) {
>         throw new java.lang.Exception(e);
>     }
>     return object;
> }
> ============================================================================
> <<<<< END OF DESCRIPTION >>>>>>

-- 
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


---------------------------------------------------------------------
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