MOXy BeanValidation使我能够向我的JAXB类添加验证。从Java JAXB注释类生成的模式中生成XSD限制
使用MOXy的“Bean验证插件”我可以在生成的JAXB类中根据restrictions/facets从预先存在架构中进行Bean验证。
不过是那里生成基于Bean验证架构与restrictions/facets任何注解从JAXB注释的Java类?当做'模式第一'生成java时,XJC有一个方便的插件体系结构,但是有没有任何等价的'java优先'方法来增强生成的XSD的额外限制,甚至是添加XML注释?无论是在MOXy还是JAXB-RI?
MOXy在满足中间映射时非常灵活,可以在模式生成期间使用它吗?
的jaxb-facets project似乎做我想要什么,但实施者不得不叉一个全新JAXB-RI得到它,似乎它不会很快被采纳的任何时间。(See this Java JIRA)
我尝试了@ m0mus指定的解决方案,但必须使用sonatype存储库中的2.7.0-SNAPSHOT版本。我仍然有几个问题; 1.我必须使用@XmlElement注释java字段才能使方面出现在xsd中。 @XmlAttribute,@XmlAccessorType(XmlAccessType.FIELD)没有区别。 @图案不起作用;我不得不解决Pattern.List中的一个Pattern;
@XmlElement
@Pattern.List(value = { @Pattern(regexp="[0-9]*") })
public String phoneNumber2;
欲了解更多信息请参阅EclipseLink Forum
目前不支持@XmlAttribute和@XmlAccessorType(XmlAccessType.FIELD)。 – Dmitry