3

我有一些新xsd schema版本更新,我需要为其生成相应的 java 类。过去,我了解总是使用 EclipseLink 的 Moxy JAXB 实现生成的类,我可以看到,如果模式包含<xs:restriction/>诸如之类的模式<xs:pattern value="[a-zA-Z]"/>,那么将生成相应的 java 类@Pattern(regexp="[a-zA-Z]", message= "..."),其中包含注释。

当我在我的设置中使用 Moxy 生成这些 java 类时,这些类生成正常,但其中没有 @Pattern 注释。我对 JAXB 不太熟悉,我想知道我可能缺少什么来允许这些注释从模式派生并自动插入到 java 类本身中。

我不太确定这是否是因为我没有使用足够新的 Moxy 版本(当前使用 EclipseLink 的 2.1.2 版本),它允许自动创建这些注释,或者之前是否使用了另一个工具来插入这些注释进入课堂。

对此问题的任何帮助将不胜感激。

问候,下午。

4

1 回答 1

3

注意: 我是EclipseLink JAXB (MOXy)负责人,也是JAXB (JSR-222)专家组的成员。

生成类

EclipseLink JAXB (MOXy) 包括来自JAXB 参考实现的 XML Schema to Java Compiler (XJC) 。目前 XJC 工具没有在模型中生成Bean Validation (JSR-303)注释的内置机制。

XJC 扩展

我自己没有尝试过以下扩展,但看起来它可以满足您的需求。由于 XJC 具有很强的可扩展性,因此可能还有其他可用的插件。

当前版本的 EclipseLink

我不太确定这是否是因为我没有使用足够新的 Moxy 版本(目前使用 2.1.2 版本的 EclipseLink)

当前版本是 EclipseLink 2.4.1,可以从下面的链接获得。它包含新的扩展,例如JSON 绑定

于 2012-11-15T12:06:45.473 回答