Return-Path: Delivered-To: apmail-xml-axis-dev-archive@xml.apache.org Received: (qmail 69122 invoked by uid 500); 21 Feb 2002 19:25:08 -0000 Mailing-List: contact axis-dev-help@xml.apache.org; run by ezmlm Precedence: bulk Reply-To: axis-dev@xml.apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list axis-dev@xml.apache.org Received: (qmail 69113 invoked by uid 500); 21 Feb 2002 19:25:08 -0000 Delivered-To: apmail-xml-axis-cvs@apache.org Date: 21 Feb 2002 19:25:07 -0000 Message-ID: <20020221192507.33560.qmail@icarus.apache.org> From: tomj@apache.org To: xml-axis-cvs@apache.org Subject: cvs commit: xml-axis/java/src/org/apache/axis/encoding/ser BeanSerializer.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N tomj 02/02/21 11:25:07 Modified: java/src/org/apache/axis/wsdl/toJava JavaComplexTypeWriter.java java/src/org/apache/axis/encoding/ser BeanSerializer.java Log: Change the return value of getAttributeElements() for bean types from a Vector to a String[]. Revision Changes Path 1.8 +11 -4 xml-axis/java/src/org/apache/axis/wsdl/toJava/JavaComplexTypeWriter.java Index: JavaComplexTypeWriter.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/wsdl/toJava/JavaComplexTypeWriter.java,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- JavaComplexTypeWriter.java 21 Feb 2002 18:51:23 -0000 1.7 +++ JavaComplexTypeWriter.java 21 Feb 2002 19:25:07 -0000 1.8 @@ -215,12 +215,19 @@ // if we have attributes, create metadata function which returns the // list of properties that are attributes instead of elements if (attributes != null) { - pw.println(" public static java.util.Vector getAttributeElements() {"); - pw.println(" java.util.Vector v = new java.util.Vector();"); + pw.println(" // List of fields that are XML attributes"); + pw.println(" public static java.lang.String[] _attrs = new String[] {"); for (int i=0; i < attributes.size(); i+=2) { - pw.println(" v.add(\"" + Utils.xmlNameToJava((String) attributes.get(i + 1)) + "\");"); + pw.println(" \"" + Utils.xmlNameToJava((String) attributes.get(i + 1)) + "\", "); } - pw.println(" return v;"); + pw.println(" };"); + pw.println(); + + pw.println(" /**"); + pw.println(" * Return list of bean field names that are attributes"); + pw.println(" */"); + pw.println(" public static java.lang.String[] getAttributeElements() {"); + pw.println(" return _attrs;"); pw.println(" }"); pw.println(); } 1.7 +9 -3 xml-axis/java/src/org/apache/axis/encoding/ser/BeanSerializer.java Index: BeanSerializer.java =================================================================== RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/encoding/ser/BeanSerializer.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- BeanSerializer.java 21 Feb 2002 18:51:23 -0000 1.6 +++ BeanSerializer.java 21 Feb 2002 19:25:07 -0000 1.7 @@ -237,9 +237,15 @@ Method getAttributeElements = javaType.getMethod("getAttributeElements", new Class [] {}); - - return (Vector) getAttributeElements.invoke(null, noArgs); - + // get string array + String[] array = (String[])getAttributeElements.invoke(null, noArgs); + + // convert it to a Vector + Vector v = new Vector(array.length); + for (int i = 0; i < array.length; i++) { + v.add(array[i]); + } + return v; } catch (Exception e) { return new Vector(); // empty vector }