[
https://issues.apache.org/jira/browse/WSCOMMONS-480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andreas Veithen resolved WSCOMMONS-480.
---------------------------------------
Resolution: Fixed
Fix Version/s: Axiom 1.2.9
> Some of the serialize/serializeAndConsume methods are declared on the wrong
> interface
> -------------------------------------------------------------------------------------
>
> Key: WSCOMMONS-480
> URL: https://issues.apache.org/jira/browse/WSCOMMONS-480
> Project: WS-Commons
> Issue Type: Bug
> Components: AXIOM
> Affects Versions: Axiom 1.2.8
> Reporter: Andreas Veithen
> Assignee: Andreas Veithen
> Priority: Minor
> Fix For: Axiom 1.2.9
>
>
> OMNode declares a set of serialize and serializeAndConsume methods taking an
> OutputStream or a Writer as argument. This is conceptually wrong because
> these methods only make sense for OMElements, not for other OMNodes.
> Note that any attempt to call these methods on anything else than an
> OMElement will fail. Consider for example the following code:
> OMFactory factory = OMAbstractFactory.getOMFactory();
> OMText text = factory.createOMText("This is a test");
> text.serialize(System.out);
> It will fail with the following exception:
> Exception in thread "main" javax.xml.stream.XMLStreamException: Trying to
> write END_DOCUMENT when document has no root (ie. trying to output empty
> document).
> at
> com.ctc.wstx.sw.BaseStreamWriter.throwOutputError(BaseStreamWriter.java:1473)
> at
> com.ctc.wstx.sw.BaseStreamWriter.reportNwfStructure(BaseStreamWriter.java:1502)
> at
> com.ctc.wstx.sw.BaseStreamWriter.finishDocument(BaseStreamWriter.java:1663)
> at com.ctc.wstx.sw.BaseStreamWriter.close(BaseStreamWriter.java:288)
> at
> org.apache.axiom.om.impl.llom.OMNodeImpl.serialize(OMNodeImpl.java:333)
> at Test.main(Test.java:14)
> The serialize and serializeAndConsume methods declared by OMNode should be
> moved to the right interface, which would be either OMElement or OMContainer.
> The latter choice would be justified by the fact that all these methods make
> sense for OMDocument as well and some of them are already declared in
> OMDocument.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.