我有一些新的xsd schema
版本更新,我需要生成相应的java类。在过去,我理解使用EclipseLink的Moxy JAXB实现总是生成的类,我可以看到,如果模式包含<xs:restriction/>
模式,如<xs:pattern value="[a-zA-Z]"/>
,那么将使用{生成相应的java类{1}}注释。
当我在我的设置中使用Moxy生成这些java类时,这些类生成正常但没有@Pattern注释。我对JAXB不太熟悉,我想知道我可能缺少什么来允许这些注释从模式派生并自动插入到java类中。
我不太确定这是因为我没有使用足够新版本的Moxy(目前使用2.1.2版本的EclipseLink),它允许自动创建这些注释,或者是否先前使用了另一个工具将这些注释插入到类中。
非常感谢任何有关此事的帮助。
此致 PM。
答案 0 :(得分:3)
注意:我是EclipseLink JAXB (MOXy)主管,是JAXB (JSR-222)专家组的成员。
生成课程
EclipseLink JAXB(MOXy)包含来自JAXB reference implementation的XML Schema to Java Compiler(XJC)。目前,XJC工具没有内置机制来在模型中生成Bean Validation (JSR-303)注释。
XJC扩展程序
我自己没有尝试过以下扩展,但看起来它可能正在寻找你想要的东西。由于XJC非常易于扩展,因此可能还有其他插件可供使用。
EclipseLink的当前版本
我不太确定这是因为我没有使用新的 Moxy的版本(目前使用的是2.1.2版本的EclipseLink)
当前版本是EclipseLink 2.4.1,可以从以下链接获得。它包含新的扩展程序,例如JSON binding。