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 gd...@apache.org on 2004/03/16 16:14:30 UTC

cvs commit: ws-axis/java/src/org/apache/axis/wsdl/toJava JavaBeanWriter.java

gdaniels    2004/03/16 07:14:30

  Modified:    java/src/org/apache/axis/wsdl/symbolTable SchemaUtils.java
                        SymbolTable.java Utils.java
               java/src/org/apache/axis/wsdl/toJava JavaBeanWriter.java
  Log:
  Fix bug with SOAP encoded types and doc/lit services.
  
  Now we should correctly emit wrapped types for nillable elements of simple
  types within generated types.
  
  TODO : Tests for this, including making sure we correctly round-trip
  nillable="true" and minOccurs="0" from WSDL->Java->WSDL
  
  Revision  Changes    Path
  1.37      +1 -3      ws-axis/java/src/org/apache/axis/wsdl/symbolTable/SchemaUtils.java
  
  Index: SchemaUtils.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/symbolTable/SchemaUtils.java,v
  retrieving revision 1.36
  retrieving revision 1.37
  diff -u -r1.36 -r1.37
  --- SchemaUtils.java	25 Feb 2004 14:02:50 -0000	1.36
  +++ SchemaUtils.java	16 Mar 2004 15:14:29 -0000	1.37
  @@ -48,10 +48,9 @@
      * (excerpt from JAX-RPC spec 1.1 Maintenanace Review 2 Chapter 6 Section 4.1.)
      * 
      * @param node        
  -   * @param symbolTable 
      * @return 
      */
  -  public static boolean isWrappedType(Node node, SymbolTable symbolTable) {
  +  public static boolean isWrappedType(Node node) {
       
       if (node == null) {
         return false;
  @@ -1794,7 +1793,6 @@
           }
           
           // If the node kind is an element, dive into it.
  -        QName nodeKind = Utils.getNodeQName(node);
           if (isXSDNode(node, "element")) {
               NodeList children = node.getChildNodes();
               for (int j = 0; j < children.getLength(); j++) {
  
  
  
  1.91      +1 -1      ws-axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java
  
  Index: SymbolTable.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/symbolTable/SymbolTable.java,v
  retrieving revision 1.90
  retrieving revision 1.91
  diff -u -r1.90 -r1.91
  --- SymbolTable.java	25 Feb 2004 14:02:51 -0000	1.90
  +++ SymbolTable.java	16 Mar 2004 15:14:29 -0000	1.91
  @@ -2108,7 +2108,7 @@
                       wrapped = false;
                   }
                   
  -                if (!SchemaUtils.isWrappedType(node, this)) {
  +                if (!SchemaUtils.isWrappedType(node)) {
                     wrapped = false;
                   }
   
  
  
  
  1.38      +0 -4      ws-axis/java/src/org/apache/axis/wsdl/symbolTable/Utils.java
  
  Index: Utils.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/symbolTable/Utils.java,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- Utils.java	7 Mar 2004 17:52:33 -0000	1.37
  +++ Utils.java	16 Mar 2004 15:14:29 -0000	1.38
  @@ -388,10 +388,6 @@
               }
           }
   
  -        if ("true".equals(getAttribute(node, "nillable"))) {
  -            qName = getNillableQName(qName);
  -        }
  -        
           // A WSDL Part uses the element attribute instead of the ref attribute
           if (qName == null) {
               forElement.value = true;
  
  
  
  1.57      +1 -1      ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaBeanWriter.java
  
  Index: JavaBeanWriter.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaBeanWriter.java,v
  retrieving revision 1.56
  retrieving revision 1.57
  diff -u -r1.56 -r1.57
  --- JavaBeanWriter.java	25 Feb 2004 14:02:52 -0000	1.56
  +++ JavaBeanWriter.java	16 Mar 2004 15:14:29 -0000	1.57
  @@ -261,7 +261,7 @@
                       String elemName = Utils.getLastLocalPart(elem.getName().getLocalPart());
                       variableName = Utils.xmlNameToJava(elemName);
                       
  -                    if (elem.getMinOccursIs0()) {
  +                    if (elem.getMinOccursIs0() || elem.getNillable()) {
                           typeName = Utils.getWrapperType(typeName);
                       }
                   }