Wildfly XML转换和空名称空间

时间:2019-02-26 07:41:43

标签: java xml xslt wildfly-10

我在Wildfly 10.1.0.Final中运行的Java Web应用程序中面临XML处理/生成方面的问题。

来源是这样的:

<root xmlns="ns1">
    <foo xmlns="ns2">
        <bar xmlns="" />
    </foo>
</root>

当我使用独立的Java项目进行解析,转换和导出xml(使用xalan 2.7.2和xerces-impl 2.12.0)时,一切正常。 当我在wildfly中执行相同的操作时,bar元素的null命名空间在途中丢失了。而且我不知道确切的位置,更重要的是为什么。 我已经尝试过排除widlfly xalan和xerces并使用捆绑的jar。我尝试将DocumentFactory和Transformerfactory显式设置为xalan / xerces实现,但无济于事。 在调试时,Document对象似乎完全按顺序排列(包括null命名空间),但是一旦将其转换为ByteArrayOutputStream,它将释放null命名空间,例如:

<root xmlns="ns1">
    <foo xmlns="ns2">
        <bar />
    </foo>
</root>

有人暗示为什么以及如何预防吗?

0 个答案:

没有答案