Есть ли способ добавить аннотации JSR303 к классам, сгенерированным cxf?

В заголовке, вероятно, сказано все, мне было интересно, можно ли указать плагину cxf-codegen добавить, например, шаблоны xsd в качестве аннотаций @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 невозможно, и это действительно упростило бы задачу.


person Scorpio    schedule 03.09.2012    source источник


Ответы (1)


У меня нет прямого опыта работы с плагином cxf-codegen-plugin, но мне тоже нужно было включить @Pattern, @Size и другие <xs:restriction /> аннотации, полученные из XSD, в мои сгенерированные JAXB классы, и в итоге я использовал krasa-jaxb-tool, который просто это.

См. ответ Блейза Догана в включая-xsrestrictions-as-annotations-in-moxy-generated-java-classes.

person Going Bananas    schedule 18.11.2012
comment
Извините, что так долго, появились другие вещи, я посмотрю на это :) - person Scorpio; 12.06.2013