Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.4
-
Novice
Description
StaxUtils.copy(XMLStreamReader,XMLStreamWriter) fails to copy documents correctly if they declare a namespace with a zero-length URI. In some cases, this URI is frivolous, but in other cases it is important, such as in the following document:
<foo xmlns="http://example.com"><bar xmlns=""/></foo>
StaxUtils will remove this zero-length URI, resulting in the following XML document:
<foo xmlns="http://example.com"><bar/></foo>
These two documents are not equivalent. In the first document, bar assumes the "empty namespace". In the second document, "bar" assumes the example.com namespace.