cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Harri Hohteri (JIRA)" <j...@apache.org>
Subject [jira] Created: (CXF-1564) ArrayType does not work correctly if isWriteOuter == false
Date Thu, 01 May 2008 06:28:55 GMT
ArrayType does not work correctly if isWriteOuter == false
----------------------------------------------------------

                 Key: CXF-1564
                 URL: https://issues.apache.org/jira/browse/CXF-1564
             Project: CXF
          Issue Type: Bug
          Components: Aegis Databinding
    Affects Versions: 2.0.6, 2.1, 2.0.5, 2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0, 2.1.1, 2.0.7
            Reporter: Harri Hohteri


In org.apache.cxf.aegis.type.basic.ArrayType:

    protected void writeValue(Object value, MessageWriter writer, Context context, Type type,
String name,
        ...
        if (type.isWriteOuter()) {
            cwriter = writer.getElementWriter(name, ns);
        } else {
            cwriter = writer;
        }

        if (value == null && type.isNillable()) {
            cwriter.writeXsiNil();
        } else {
            type.writeObject(value, cwriter, context);
        }

        cwriter.close();
    }

Should be: 

    protected void writeValue(Object value, MessageWriter writer, Context context, Type type,
String name,
        ...
        if (type.isWriteOuter()) {
            cwriter = writer.getElementWriter(name, ns);
        } else {
            cwriter = writer;
        }

        if (value == null && type.isNillable()) {
            cwriter.writeXsiNil();
        } else {
            type.writeObject(value, cwriter, context);
        }

        if (type.isWriteOuter()) {
            cwriter.close();
        }
    }

Similar bug was in XFire (http://jira.codehaus.org/browse/XFIRE-547).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message