从JSON moxy输出中重命名“type”

我正在努力处理Moxy如何处理对象的继承。

特别是,我需要重命名Moxy在子类型中添加的默认type元素,因为它会阻止我在对象中创建自己的type字段。

这个问题涉及从JSON输出球衣moxy删除“类型”,但不幸的是,它不回答我的问题。

我曾试图在我的抽象类中包含@XmlDiscriminatorNode ,这在所得到的json中似乎没有任何区别。

我也尝试完全删除默认的moxy type元素,但没有任何成功。


MOXy 2.6中处理类型属性的操作发生了变化。 从MOXY 2.6开始,类型属性在默认情况下以xsi前缀(或您定义的任何前缀)作为前缀。 这意味着从版本2.6开始,MOXy应该没有类型属性冲突。

详细信息可以在https://wiki.eclipse.org/EclipseLink/DesignDocs/459464找到

名称空间前缀需要指定为JAXBContext属性:

unmarshaller.setProperty(JAXBContextProperties.MEDIA_TYPE,MediaType.APPLICATION_JSON); Map namespaces = new HashMap <>(); namespaces.put(javax.xml.XMLConstants.W3C_XML_SCHEMA_INSTANCE_NS_URI,“xsi”); unmarshaller.setProperty(JAXBContextProperties.NAMESPACE_PREFIX_MAPPER,namespaces);

链接地址: http://www.djcxy.com/p/25533.html

上一篇: Rename "type" from JSON moxy output

下一篇: How to maintain app master data at server end?