使用相同的类来解析具有名称空间和不具有名称空间的XML消息

时间:2019-02-01 08:38:40

标签: java xml jaxb marshalling unmarshalling

我需要使用JAXB解析XML消息,但是收到的xml消息在不同客户端之间的命名空间中不一致。

我发现名称空间是在@XMLElement带注释的类本身中定义的,或者是在package-info.java中定义的,但是如何为同一个Java类定义两个不同的名称空间?

2 个答案:

答案 0 :(得分:0)

我发现,这是最好的通过XSLT转换把变种文件,使他们都在一个共同的格式,你做任何进一步处理之前。这是尤其如此,如果变化基本上是微不足道的命名空间差异。

@Seelenvirtuose当然是非常正确的,这里存在一个根本原因问题,应该解决;如果该命名是没有得到控制,那么数据质量可能不是下控制任一。

答案 1 :(得分:0)

命名空间过滤器在这种情况下很有帮助。