Regression with base64Binary and simpleType elements
----------------------------------------------------
Key: AXIS-2138
URL: http://issues.apache.org/jira/browse/AXIS-2138
Project: Apache Axis
Type: Bug
Components: WSDL processing
Versions: current (nightly)
Reporter: Steve Green
The following xsd snippet is cut down from http://www.w3.org/2000/09/xmldsig#
<complexType name="ReferenceType">
<sequence>
<element ref="ds:DigestValue"/>
</sequence>
</complexType>
<element name="DigestValue" type="ds:DigestValueType"/>
<simpleType name="DigestValueType">
<restriction base="base64Binary"/>
</simpleType>
Once upon a time, the bean metadata for the DigestValue element looked like
this:
elemField.setXmlName(
new javax.xml.namespace.QName(
"http://www.w3.org/2000/09/xmldsig#", "DigestValue"));
elemField.setXmlType(
new javax.xml.namespace.QName(
"http://www.w3.org/2001/XMLSchema", "base64Binary"));
But now it looks like this:
elemField.setXmlName(
new javax.xml.namespace.QName(
"http://www.w3.org/2000/09/xmldsig#", "DigestValue"));
elemField.setXmlType(
new javax.xml.namespace.QName(
"http://www.w3.org/2000/09/xmldsig#", "DigestValue"));
And as a result, I get this:
org.xml.sax.SAXException: Found character data inside an array element
while deserializing
It looks like the problem is in JavaBeanHelperWriter and came as the result of:
revision 1.50
date: 2005/03/20 18:58:49; author: gdaniels; state: Exp;
lines: +6 -7
branches: 1.50.2;
Fix:
http://issues.apache.org/jira/browse/AXIS-1869
Don't walk the ref chain unless the TypeEntry is a CollectionTE
- this should DTRT for true derived types.
Specifically,
// Otherwise, use the type at the end of the ref
// chain.
while (elemType.getRefType() != null) {
elemType = elemType.getRefType();
}
was changed to
// Otherwise, use the first non-Collection type we
// encounter up the ref chain.
while (elemType instanceof CollectionTE) {
elemType = elemType.getRefType();
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira