[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