gdaniels 02/03/18 08:16:58
Modified: java/src/org/apache/axis/encoding/ser Tag: Beta1
BeanSerializer.java
java/src/org/apache/axis/utils Tag: Beta1 JavaUtils.java
java/src/org/apache/axis/wsdl/toJava Tag: Beta1
JavaComplexTypeWriter.java
java/test Tag: Beta1 build_functional_tests.xml
java/test/utils Tag: Beta1 TestJavaUtils.java
Log:
Merge over fixes from HEAD. See:
http://marc.theaimsgroup.com/?l=axis-dev&m=101638231531156&w=2
Revision Changes Path
No revision
No revision
1.20.2.1 +4 -1
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.20
retrieving revision 1.20.2.1
diff -u -r1.20 -r1.20.2.1
--- BeanSerializer.java 14 Mar 2002 21:36:07 -0000 1.20
+++ BeanSerializer.java 18 Mar 2002 16:16:58 -0000 1.20.2.1
@@ -347,6 +347,7 @@
writeAttribute(types, attrName.getLocalPart(),
field.getType(),
complexType);
+ continue;
} else {
QName xmlName = typeDesc.getElementNameForField(
field.getName());
@@ -356,9 +357,11 @@
// schema for this correctly?
}
name = xmlName.getLocalPart();
+ writeField(types, name, field.getType(),
+ field.getIndexed(), all);
+ continue;
}
}
- return true;
}
}
No revision
No revision
1.34.2.1 +6 -1 xml-axis/java/src/org/apache/axis/utils/JavaUtils.java
Index: JavaUtils.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/utils/JavaUtils.java,v
retrieving revision 1.34
retrieving revision 1.34.2.1
diff -u -r1.34 -r1.34.2.1
--- JavaUtils.java 12 Mar 2002 17:41:06 -0000 1.34
+++ JavaUtils.java 18 Mar 2002 16:16:58 -0000 1.34.2.1
@@ -459,7 +459,12 @@
// because toLowerCase will lowercase some characters that
// isUpperCase will return false for. Like \u2160, Roman
// numeral one.
- if (Character.isUpperCase(nameArray[i])) {
+
+ // Don't lowercase if this is the first character and the 2nd
+ // character is also uppercase, to follow Introspector rules.
+ if (Character.isUpperCase(nameArray[i]) &&
+ ((i != 0) ||
+ (nameLen > 1 && Character.isLowerCase(nameArray[1])))) {
result.append(Character.toLowerCase(nameArray[i]));
}
else {
No revision
No revision
1.22.2.1 +16 -18
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.22
retrieving revision 1.22.2.1
diff -u -r1.22 -r1.22.2.1
--- JavaComplexTypeWriter.java 15 Mar 2002 01:14:11 -0000 1.22
+++ JavaComplexTypeWriter.java 18 Mar 2002 16:16:58 -0000 1.22.2.1
@@ -121,8 +121,7 @@
if (elementMappings == null)
elementMappings = new HashMap();
- elementMappings.put(Utils.capitalizeFirstChar(javaName),
- new QName("", elemName));
+ elementMappings.put(javaName, new QName("", elemName));
}
names.add(type.getName());
names.add(javaName);
@@ -186,9 +185,9 @@
String capName = Utils.capitalizeFirstChar(name);
String get = "get";
- //if (typeName.equals("boolean") ||
- // typeName.startsWith("boolean["))
- // get = "is"
+ if (typeName.equals("boolean") ||
+ typeName.startsWith("boolean["))
+ get = "is";
pw.println(" public " + typeName + " " + get + capName + "() {");
pw.println(" return " + name + ";");
@@ -240,12 +239,6 @@
// if we have attributes, create metadata function which returns the
// list of properties that are attributes instead of elements
- // Glen 3/7/02 : This is now using the type metadata model which
- // provides for arbitrary mapping of XML elements or attributes
- // <-> Java fields. We need to generalize this to support element
- // mappings as well, but right now this is just to keep the attribute
- // mechanism working.
-
if (attributes != null || elementMappings != null) {
boolean wroteFieldType = false;
pw.println(" // " + JavaUtils.getMessage("typeMeta"));
@@ -257,9 +250,7 @@
if (attributes != null) {
for (int i = 0; i < attributes.size(); i += 2) {
String attrName = (String) attributes.get(i + 1);
- String fieldName =
- Utils.capitalizeFirstChar(
- Utils.xmlNameToJava(attrName));
+ String fieldName = Utils.xmlNameToJava(attrName);
pw.print(" ");
if (!wroteFieldType) {
pw.print("org.apache.axis.description.FieldDesc ");
@@ -326,6 +317,7 @@
pw.println(" public boolean equals(Object obj) {");
pw.println(" // compare elements");
pw.println(" " + className + " other = (" + className + ") obj;");
+ pw.println(" if (obj == null) return false;");
pw.println(" if (this == obj) return true;");
pw.println(" if (! (obj instanceof " + className + ")) return
false;");
if (names.size() == 0) {
@@ -335,7 +327,11 @@
for (int i = 0; i < names.size(); i += 2) {
String variableType = (String) names.get(i);
String variable = (String) names.get(i + 1);
-
+ String get = "get";
+
+ if (variableType.equals("boolean"))
+ get = "is";
+
if (variableType.equals("int") ||
variableType.equals("long") ||
variableType.equals("short") ||
@@ -343,13 +339,15 @@
variableType.equals("double") ||
variableType.equals("boolean") ||
variableType.equals("byte")) {
- pw.print(" " + variable + " == other.get" +
+ pw.print(" " + variable + " == other." + get +
Utils.capitalizeFirstChar(variable) + "()");
} else {
- pw.println(" ((" + variable + "==null && other.get" +
+ pw.println(" ((" + variable +
+ "==null && other." + get +
Utils.capitalizeFirstChar(variable) + "()==null) ||
");
pw.println(" (" + variable + "!=null &&");
- pw.print(" " + variable + ".equals(other.get" +
+ pw.print(" " + variable +
+ ".equals(other." + get +
Utils.capitalizeFirstChar(variable) + "())))");
}
if (i == (names.size() - 2))
No revision
No revision
1.36.2.1 +1 -0 xml-axis/java/test/build_functional_tests.xml
Index: build_functional_tests.xml
===================================================================
RCS file: /home/cvs/xml-axis/java/test/build_functional_tests.xml,v
retrieving revision 1.36
retrieving revision 1.36.2.1
diff -u -r1.36 -r1.36.2.1
--- build_functional_tests.xml 27 Feb 2002 17:22:56 -0000 1.36
+++ build_functional_tests.xml 18 Mar 2002 16:16:58 -0000 1.36.2.1
@@ -99,6 +99,7 @@
has its own test class collecting all the tests -->
<include name="**/FunctionalTests.class" />
<include name="**/*TestCase.class" />
+ <exclude name="**/Interop3TestCase.class"/>
</fileset>
</batchtest>
</junit>
No revision
No revision
1.2.4.1 +2 -1 xml-axis/java/test/utils/TestJavaUtils.java
Index: TestJavaUtils.java
===================================================================
RCS file: /home/cvs/xml-axis/java/test/utils/TestJavaUtils.java,v
retrieving revision 1.2
retrieving revision 1.2.4.1
diff -u -r1.2 -r1.2.4.1
--- TestJavaUtils.java 13 Feb 2002 15:39:57 -0000 1.2
+++ TestJavaUtils.java 18 Mar 2002 16:16:58 -0000 1.2.4.1
@@ -45,7 +45,8 @@
assertEquals("fooBar", JavaUtils.xmlNameToJava("foo\u0387bar"));
assertEquals("fooBar", JavaUtils.xmlNameToJava("foo\u06DDbar"));
assertEquals("fooBar", JavaUtils.xmlNameToJava("foo\u06DEbar"));
- assertEquals("fOOBar", JavaUtils.xmlNameToJava("FOOBar"));
+ assertEquals("fooBar", JavaUtils.xmlNameToJava("FooBar"));
+ assertEquals("FOOBar", JavaUtils.xmlNameToJava("FOOBar"));
// the following cases are ambiguous in JSR-101
assertEquals("fooBar", JavaUtils.xmlNameToJava("foo bar"));