[jboss-cvs] webservice/src/main/org/jboss/webservice/encoding/ser ...

Thomas Diesler thomas.diesler at jboss.com
Mon Jul 24 07:56:06 EDT 2006


  User: tdiesler
  Date: 06/07/24 07:56:06

  Modified:    src/main/org/jboss/webservice/encoding/ser  Tag:
                        JBoss_4_0_4_WS4EE MetaDataTypeDesc.java
  Log:
  [JBWS-1092] JBoss 4.0.4 with WS4EE: Superclass properties being discarded
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.6.2.12.12.1 +19 -3     webservice/src/main/org/jboss/webservice/encoding/ser/Attic/MetaDataTypeDesc.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: MetaDataTypeDesc.java
  ===================================================================
  RCS file: /cvsroot/jboss/webservice/src/main/org/jboss/webservice/encoding/ser/Attic/MetaDataTypeDesc.java,v
  retrieving revision 1.6.2.12
  retrieving revision 1.6.2.12.12.1
  diff -u -b -r1.6.2.12 -r1.6.2.12.12.1
  --- MetaDataTypeDesc.java	16 Jan 2006 18:10:30 -0000	1.6.2.12
  +++ MetaDataTypeDesc.java	24 Jul 2006 11:56:06 -0000	1.6.2.12.12.1
  @@ -21,7 +21,7 @@
   */
   package org.jboss.webservice.encoding.ser;
   
  -// $Id: MetaDataTypeDesc.java,v 1.6.2.12 2006/01/16 18:10:30 tdiesler Exp $
  +// $Id: MetaDataTypeDesc.java,v 1.6.2.12.12.1 2006/07/24 11:56:06 tdiesler Exp $
   
   import org.jboss.axis.description.AttributeDesc;
   import org.jboss.axis.description.ElementDesc;
  @@ -40,6 +40,7 @@
   import java.util.ArrayList;
   import java.util.Iterator;
   import java.util.Map;
  +import java.lang.reflect.Field;
   
   /**
    * An Axis TypeDesc that can get additional information from the ws4ee-deployment.xml
  @@ -222,8 +223,23 @@
            while (it.hasNext())
            {
               String propName = (String)it.next();
  -            ElementMetaData elMetaData = metaData.getElementMetaDataByFieldName(propName);
  -            if ("class".equals(propName) == false && elMetaData == null)
  +            ElementMetaData propertyDescription = metaData.getElementMetaDataByFieldName(propName);
  +
  +            // get the locally declared fields
  +            Field[] fields = this.javaClass.getDeclaredFields();
  +            boolean isDeclared = false;
  +            for(int i=0; i<fields.length; i++)
  +            {
  +               if(fields[i].getName().equals(propName)) {
  +                  isDeclared = true;
  +                  break;
  +               }
  +            }
  +
  +            // is the property declared but doesn't exists in metadata?
  +            boolean declaredButNotDescribed = isDeclared && (propertyDescription == null);
  +            // supress properties that are not listed in metadata
  +            if ("class".equals(propName) == false && declaredButNotDescribed)
               {
                  removedKeys.add(propName);
                  bpdMap.remove(propName);
  
  
  



More information about the jboss-cvs-commits mailing list