gpt4 book ai didi

java - MOXy 2.6.0 版本是否支持非字符串@XmlID?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:13:03 25 4
gpt4 key购买 nike

根据 https://gist.github.com/VineetReynolds/5108580 ,JAXB 规范要求用​​ @XmlID 注释的元素是 String。 MOXy 在 2.5.x 版本中并未强制执行此操作。
但是,对于 2.6.0 版本,它似乎不再受支持。

[Exception [EclipseLink-50016] (Eclipse Persistence Services - 2.6.0.v20150309-bf26070): org.eclipse.persistence.exceptions.JAXBException
Exception Description: Property [id] has an XmlID annotation but its type is not String.]**strong text**

这是需要的行为,还是不需要的倒退?

从 MOXy 2.5.x 迁移时避免此类错误的正确方法是什么?
是否按照这篇文章Marshaling a long primitive type using JAXB中的描述使用@XmlJavaTypeAdapter ,这也会影响对象本身(及其 ID)序列化为 JSON 的方式(例如,Long 类型的 id 字段变成 json 字符串?

最佳答案

是的,它仍然受支持。在 2.6.0 中默认不支持,但必须通过 @XmlIDExtension 注解启用。

https://eclipse.org/eclipselink/releases/2.6.php

只需使用 @XmlIDExtension 注释给定的字段。还可以指定系统属性 org.eclipse.persistence.moxy.annotation.xml-id-extension 以全局覆盖默认行为。

关于java - MOXy 2.6.0 版本是否支持非字符串@XmlID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29564627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com