JAXB EclipseLink 与可空元素编组 CHOICE 的问题
我有一个定义如下的模式:
<complexType name="x">
<sequence>
<element name="year" type="date"/>
<choice>
<element name="comuneNascita" type="string" nillable="true"/>
<element name="statoNascita" type="string" nillable="true"/>
</choice>
</sequence>
</complexType>
当我尝试编组用 xjc (使用 xjc:simple 选项)生成的类时,我得到这个结果:
[...]
<statoNascita xsi:nil="true"/>
<comuneNascita>xxx</comuneNascita>
[...]
删除 nillable="true" 解决了这个问题,但我必须指定一个有效元素(没有被消灭)。
有什么解决办法吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以通过按如下方式注释属性来避免问题:
您可以使用 JAXB 绑定文件让 XJC 生成如上注释的属性:
了解更多信息
You can avoid your problem by having a property annotated as follows:
You can get XJC to generate a property annotated as above using a JAXB bindings file:
For More Information