Java EclipseLink MOXy 2.5.0快照不兼容性要求将属性添加到Proporter

Java EclipseLink MOXy 2.5.0快照不兼容性要求将属性添加到Proporter,java,json,eclipselink,moxy,Java,Json,Eclipselink,Moxy,我启用maven的项目一切正常 但当我今天重建它时,测试开始失败,并出现错误 the property or field count on the class org.musicbrainz.mmd2.DiscList is required to be included in the propOrder element of the XmlType annotation 没有代码改变,所以我假设eclipselink MOXy 2.5 snaphot jar中发生了一些变化 我可以通过从o

我启用maven的项目一切正常

但当我今天重建它时,测试开始失败,并出现错误

the property or field count on the class org.musicbrainz.mmd2.DiscList 
is required to be included in the propOrder element of the XmlType annotation
没有代码改变,所以我假设eclipselink MOXy 2.5 snaphot jar中发生了一些变化

我可以通过从oxml.xml中删除有问题的映射来解决这个问题

<java-type name="DiscList">
    <java-attributes>
        <xml-element java-attribute="count" name="disc-count"/>
    </java-attributes>
</java-type>

但这很痛苦,因为这些类是从模式自动生成的,我不想每次模式更改时都手动编辑它们

所以问题是MOXy到底发生了什么变化,这一变化是否引入了一个bug?

我们在版本2.4.2和2.5.0中进行了这一变化(这两个流目前都在开发中)。进行此更改是为了反映JAXB参考实现中的相应行为

相关错误

建议的修复程序

如果在外部映射文件中添加新映射(这有点罕见,因为您必须通过注释显式删除映射)。然后还需要覆盖外部映射文件中的
比例器


将您的反馈发送给我们

我们喜欢获得关于我们所做更改的反馈,特别是关于仍在开发中的流的反馈。这方面的最佳机制是:

  • 日食论坛:
  • EclipseLink用户邮件列表:eclipse.org上的EclipseLink用户
  • 输入错误:
了解更多信息


更新


谢谢你的回答,虽然我不相信需要我补充 元素以支持顺序,只是因为我想重命名它是一个 改进。我不知道为什么count不在proplist中 没有把它拿出来,只是在上课的时候没有加进去 使用JAXB自动创建

如果Java类是从XML模式生成的,并且
count
对应于一个XML元素,那么它应该按照prop顺序。MOXy使用与参考实现相同的XJC代码,如果
proporter
不完整,JAXB RI也会抛出一个异常,因此我不确定什么场景会将其排除在外。你介意发布生成的类吗?我想看看这里是否有真正的bug

如果eclipselink maven存储库是 可浏览的下载页面:download.eclipse.org/rt/eclipselink/maven.repo 未给出对快照所做更改的任何指示

我们正在努力改进我们的Maven设置。我建议将此作为针对
build
组件的增强请求输入:


谢谢你的回答,尽管我不认为仅仅因为我想重命名就要求我在道具顺序中添加元素是一种改进。我不知道为什么count不在proplist中,我没有把它去掉,只是在用JAXB自动创建类时没有添加它。如果eclipselink maven存储库是可浏览的,那么它也会很有用,因为页面没有给出对快照所做更改的任何指示(注意,DiscList的最后一次签入包含一个手动修改的比例器,这是我在看到您的之前的修复)
@XmlType(name = "", propOrder = {
    "disc"    
})
@XmlType(name = "", propOrder = {
    "disc","count"
})