jaxb注释不可扩展的原因是什么?

时间:2011-03-27 19:56:46

标签: java jaxb

如果您查看jsr-303(bean验证),您会注意到注释可以放在@target中的ANNOTATION_TYPE上(例如javax.validation.constraints.Min

通过这种方式,bean验证很容易扩展到@OnlyPositiveNumber

在jaxb中为例子(一个坏的)我可以创建@XmlAlwaysRequiredElement

XmlElement这样的JAXB注释是否有充分理由不使用相同的技术?

1 个答案:

答案 0 :(得分:3)

我怀疑你可以说“因为X而没有完成” - 它就是这样,并且规范引线不认为有必要,或者他们根本没有想到它。谁知道呢。

但是,在这种情况下,我真的不太需要它。您的示例涉及数据验证,JAXB旨在与XML Schema一起使用,而不是使用注释进行验证。

如果我们想要为JAXB进行基于注释的验证,那么为此使用JSR-303验证会更有意义,并让JAXB运行时选择并使用它们,而不是,或者除此之外, XML Schema验证。但是,目前的实现都没有这样做(我认为)。