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

Heiko Braun hbruan at jboss.com
Fri Jul 21 11:36:00 EDT 2006


  User: hbraun  
  Date: 06/07/21 11:36:00

  Modified:    src/main/org/jboss/webservice/encoding/ser  Tag: Branch_4_0
                        MetaDataTypeDesc.java
  Log:
  Fix JBWS-1092
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.6.2.13  +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.13
  diff -u -b -r1.6.2.12 -r1.6.2.13
  --- MetaDataTypeDesc.java	16 Jan 2006 18:10:30 -0000	1.6.2.12
  +++ MetaDataTypeDesc.java	21 Jul 2006 15:36:00 -0000	1.6.2.13
  @@ -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.13 2006/07/21 15:36:00 hbraun 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