标题可能说了一切,我想知道是否可以告诉cxf-codegen-plugin添加,例如,xsd-patterns为@Pattern
注释。模式验证很好,但有时候我只是想检查单个元素而不是无数无数的xml行。
因此我想知道是否有一个技巧/选项/肮脏的黑客可以帮助我转向
<xs:simpleType name="string2000">
<xs:restriction base="xs:string">
<xs:maxLength value="2000"/>
<xs:minLength value="1"/>
<xs:pattern value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}-[ \t\r\n]][\p{IsBasicLatin}\p{IsLatin-1Supplement}-[\t\r\n]]*"/>
</xs:restriction>
</xs:simpleType>
到
@Pattern(regexp = "\\p{IsBasicLatin}\\p{IsLatin-1Supplement}-[ \\t\\r\\n]][\\p{IsBasicLatin}\\p{IsLatin-1Supplement}-[\\t\\r\\n]]*")
@Size(min = 1, max = 2000)
因为手动添加它是一个禁止使用这个数量的xml,它会让事情变得更容易。
答案 0 :(得分:1)
我对cxf-codegen-plugin没有直接经验,但我也需要将从XSD派生的@Pattern
,@Size
和其他<xs:restriction />
注释包含到我的JAXB中生成的类并最终使用krasa-jaxb-tool来实现这一点。
在Blaise Doughan中查看including-xsrestrictions-as-annotations-in-moxy-generated-java-classes的答案。