如何控制生成的JAXB枚举

时间:2016-09-15 12:26:50

标签: java xml enums jaxb schema

我有一般性问题,如果需要,会提供更多信息。我有一个生成多个枚举的模式。我能够使用以下方法增加枚举次数:

    typesafeEnumMaxMembers="34431"

这解决了创建枚举的直接问题。但是,它会在一个类中生成超过65k的常量。这超过了java的限制。我怎样才能为这些数据使用其他数据结构?我有一个省略枚举的模式,但它仍然似乎生成它们。

我的目标是看看是否有人遇到过这类事情。如果可能的话,我宁愿不以任何方式更改架构。我已经阅读了JAXB文档并尝试了各种各样的东西,但似乎并没有解决我的问题。

非常感谢任何见解。

谢谢,

戴夫

1 个答案:

答案 0 :(得分:1)

通常,如果由于字典的大小太大而导致JAXB无法生成枚举,则会创建一个文本字段。

如果要将文本值转换为bean中的其他内容,可以始终使用XMLAdapter将值转换为您喜欢的某个自定义类型。您需要对相应的getter / field使用@XmlJavaTypeAdapter注释。