JAXB-ElipseLink:@XmlJavaTypeAdapter 和类型属性
我正在使用 @XmlJavaTypeAdapter 将 Map 类型的字段封送到 XML。这会导致 EclipseLink-MOXy 在输出 xml 元素上创建一个 xsi:type="
属性。 验证后,当然找不到引用的类型。
有什么办法可以抑制这个属性的产生吗?
PS:XmlAdapter 标签会很方便:)
I am using @XmlJavaTypeAdapter to marshal fields of type Map to XML. This results in EclipseLink-MOXy creating an xsi:type="<myValueType>"
-attribute on the output xml-element.
Upon validation the referenced type can of course not be found.
Is there any way of suppressing the generation of this attribute?
PS: An XmlAdapter-tag would be handy :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
结果类型属性与 @XmlJavaTypeAdapter 注释无关。
这是因为 Map 的元素属于派生类型,并且 MOXy 正确地将它们的类型编组为类型属性。
使用
而不是
解决了该问题。Turns out the type-attribute had nothing to do with the @XmlJavaTypeAdapter annotation.
It was caused by the fact, that the Map's elements were of a derived type and MOXy correctly marshalled their type to a type-attribute.
Using
<xml-element-ref>
instead of<xml-element>
solved the issue.