2 xml soap namespaces xstream jaxb
目前在应用程序中,我们获得了一个SOAP响应xml,其中每个元素都附加了名称空间 我已经硬编码到我的代码中,因为应用程序需要干净的xml,所以会忽略命名空间.但是在测试时它被认为是一个弱解决方案,因为命名空间可能会在未来发生变化.我建议使用jaxb.我目前正在使用xtream,因为我们可以直接读取xml.所以我开始研究jaxb.但是jaxb需要xsd.我已经理解了这个过程,但我不确定如何在我的应用程序中实现Jaxb,因为我得到了一个xml响应.所以,我的问题是否有可能在这种情况下用jaxb替换xtream?
谢谢
注意: 我是EclipseLink JAXB(MOXy)的负责人,也是J AXB 2(JSR-222)专家组的成员.
我目前正在使用xtream,因为我们可以直接读取xml.所以我开始研究jaxb.但是jaxb需要xsd.
JAXB需要XML模式(甚至在XStream FAQ上)这是一种常见的误解.事实是,JAXB旨在从对象开始,并提供从XML模式生成带注释的对象模型的选项.在处理大型XML模式时,这非常有用:
目前在应用程序中,我们获得了一个SOAP响应xml,其中每个元素都附加了名称空间 我已经硬编码到我的代码中,因为应用程序需要干净的xml,所以会忽略命名空间.但是在测试时它被认为是一个弱解决方案,因为命名空间可能会在未来发生变化.
JAXB非常支持映射名称空间.这可以在包级别上进行@XmlSchema,类级别为@XmlType,或者字段/属性级别为@XmlAttribute/ @XmlElement:
我已经理解了这个过程,但我不确定如何在我的应用程序中实现Jaxb,因为我得到了一个xml响应
下面是一篇文章的链接,该文章使用JAXB和XStream将同一对象模型映射到同一XML文档.它将让您了解一些概念的相关性:
另一件事是,JAXB引用标准(JSR-222)而不是特定实现.实际上有几个实现包括: