You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "qin bethune (JIRA)" <ax...@ws.apache.org> on 2006/02/14 12:12:11 UTC

[jira] Created: (AXIS-2404) WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.

WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.
------------------------------------------------------------------------------------------------------------------

         Key: AXIS-2404
         URL: http://issues.apache.org/jira/browse/AXIS-2404
     Project: Apache Axis
        Type: Bug
  Components: WSDL processing  
    Versions: 1.3    
 Environment: Windows XP
    Reporter: qin bethune


Given the following schema, 
   <element name="add">
    <complexType>
	<!--annotation>
		<documentation>add operation</documentation>
	</annotation-->
     <sequence>
      <element name="in0" type="xsd:int"/>
      <element name="in1" type="xsd:int"/>
     </sequence>
    </complexType>
   </element>
The generated java interface will be something like

public interface WrapperTestInterface extends java.rmi.Remote {
    public int add(int in0, int in1) throws java.rmi.RemoteException;
}

Uncomment the annotation element, the generated java interface will be something like.
package test;

public interface WrapperTestInterface extends java.rmi.Remote {
    public test.AddResponse add(test.Add parameters) throws java.rmi.RemoteException;
}



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


[jira] Commented: (AXIS-2404) WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.

Posted by "qin bethune (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS-2404?page=comments#action_12369135 ] 

qin bethune commented on AXIS-2404:
-----------------------------------

This is a fix and has passed all unit test against Axis 1.3
 
Index: org/apache/axis/wsdl/symbolTable/SchemaUtils.java
===================================================================
--- org/apache/axis/wsdl/symbolTable/SchemaUtils.java   (revision 381218)
+++ org/apache/axis/wsdl/symbolTable/SchemaUtils.java   (working copy)
@@ -202,7 +202,8 @@
                       }
                   }
                   return true;
-              } else {
+              } else if (!localName.equals("annotation")){
+                  //fix for Axis-2404,allow annotation as sibling of sequence.

                   return false;
               }
           }

> WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.
> ------------------------------------------------------------------------------------------------------------------
>
>          Key: AXIS-2404
>          URL: http://issues.apache.org/jira/browse/AXIS-2404
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: 1.3
>  Environment: Windows XP
>     Reporter: qin bethune

>
> Given the following schema, 
>    <element name="add">
>     <complexType>
> 	<!--annotation>
> 		<documentation>add operation</documentation>
> 	</annotation-->
>      <sequence>
>       <element name="in0" type="xsd:int"/>
>       <element name="in1" type="xsd:int"/>
>      </sequence>
>     </complexType>
>    </element>
> The generated java interface will be something like
> public interface WrapperTestInterface extends java.rmi.Remote {
>     public int add(int in0, int in1) throws java.rmi.RemoteException;
> }
> Uncomment the annotation element, the generated java interface will be something like.
> package test;
> public interface WrapperTestInterface extends java.rmi.Remote {
>     public test.AddResponse add(test.Add parameters) throws java.rmi.RemoteException;
> }

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


[jira] Commented: (AXIS-2404) WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.

Posted by "qin bethune (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS-2404?page=comments#action_12366324 ] 

qin bethune commented on AXIS-2404:
-----------------------------------

fail to upload the WSDL as attachment, so just paste it here.

<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://test" xmlns:impl="http://test" xmlns:intf="http://test" 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:types>
  <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://test" elementFormDefault="qualified">
   <element name="add">
    <complexType>
	<annotation>
		<documentation>add operation</documentation>
	</annotation>
     <sequence>
      <element name="in0" type="xsd:int"/>
      <element name="in1" type="xsd:int"/>
     </sequence>
    </complexType>
   </element>
   <element name="addResponse">
    <complexType>
     <sequence>
      <element name="addReturn" type="xsd:int"/>
     </sequence>
    </complexType>
   </element>
  </schema>
 </wsdl:types>

   <wsdl:message name="addRequest">

      <wsdl:part name="parameters" element="impl:add"/>

   </wsdl:message>

   <wsdl:message name="addResponse">

      <wsdl:part name="parameters" element="impl:addResponse"/>

   </wsdl:message>

   <wsdl:portType name="WrapperTestInterface">

      <wsdl:operation name="add">

         <wsdl:input name="addRequest" message="impl:addRequest"/>

         <wsdl:output name="addResponse" message="impl:addResponse"/>

      </wsdl:operation>

   </wsdl:portType>

   <wsdl:binding name="SoapBinding" type="impl:WrapperTestInterface">

      <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

      <wsdl:operation name="add">

         <wsdlsoap:operation soapAction="add"/>

         <wsdl:input name="addRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="addResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

      </wsdl:operation>

   </wsdl:binding>

   <wsdl:service name="Web Input Proxy">

      <wsdl:port name="" binding="impl:SoapBinding">

         <wsdlsoap:address location="http://localhost:8081/webservice/Projects_AxisBug_initial_WebInputProxy"/>

      </wsdl:port>

   </wsdl:service>

</wsdl:definitions>


> WSDL2Java can't generate java interface of wrapped style when the wrapper element has an annotation child element.
> ------------------------------------------------------------------------------------------------------------------
>
>          Key: AXIS-2404
>          URL: http://issues.apache.org/jira/browse/AXIS-2404
>      Project: Apache Axis
>         Type: Bug
>   Components: WSDL processing
>     Versions: 1.3
>  Environment: Windows XP
>     Reporter: qin bethune

>
> Given the following schema, 
>    <element name="add">
>     <complexType>
> 	<!--annotation>
> 		<documentation>add operation</documentation>
> 	</annotation-->
>      <sequence>
>       <element name="in0" type="xsd:int"/>
>       <element name="in1" type="xsd:int"/>
>      </sequence>
>     </complexType>
>    </element>
> The generated java interface will be something like
> public interface WrapperTestInterface extends java.rmi.Remote {
>     public int add(int in0, int in1) throws java.rmi.RemoteException;
> }
> Uncomment the annotation element, the generated java interface will be something like.
> package test;
> public interface WrapperTestInterface extends java.rmi.Remote {
>     public test.AddResponse add(test.Add parameters) throws java.rmi.RemoteException;
> }

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