You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Davanum Srinivas (JIRA)" <ax...@ws.apache.org> on 2005/08/02 21:44:37 UTC

[jira] Commented: (AXIS-2138) Regression with base64Binary and simpleType elements

    [ http://issues.apache.org/jira/browse/AXIS-2138?page=comments#action_12317444 ] 

Davanum Srinivas commented on AXIS-2138:
----------------------------------------

could you please attach a complete wsdl?

thanks,
dims

> 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