[
https://issues.apache.org/jira/browse/CXF-1564?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12593560#action_12593560
]
Harri Hohteri commented on CXF-1564:
------------------------------------
Perhaps testing that the message writer that is passed to the writeObject of
ArrayType is not closed when control is returned from the writeObject?
If I have understood the logic correctly, the isWriteOuter indicates if the
type class wants to write the element tag itself or use the default element tag
which would be one defined by the name attribute of @XmlType annotation in the
mapped class or if that is not defined the simple class name.
> 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, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.1, 2.0.6,
> 2.1.1, 2.0.7
> Reporter: Harri Hohteri
> Assignee: Benson Margulies
> Fix For: 2.1.1
>
>
> 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.