2011-07-25 38 views
3

我使用xjc從JAX-WS webservice的XML模式生成java類。正則表達式驗證的JAX-WS @Pattern註解

在我的架構,我指定類型的逗號分隔的整數列表:

<xs:simpleType name="IntegerList"> 
    <xs:restriction base="xs:string"> 
     <xs:pattern value="(\d+,)*\d+" /> 
    </xs:restriction> 
</xs:simpleType> 

當這種類型的元素通過XJC轉換爲Java類,它們成爲String對象(他們應該)但正則表達式驗證丟失。

我讀了關於應該用於正則表達式的@Pattern annoation的地方。

爲什麼不是xjc使用這個註解,我怎樣才能修復它在Java中執行regex驗證呢?

謝謝你幫

回答

0

我還沒有嘗試使用模式的限制與XJC自己。基於以下文章,我認爲xjc本身不會創建@Pattern限制,但是一個積極進取的靈魂已經在java.net上發佈了一個自定義,這個自定義被廣告來管理@Pattern創建(等等)。 [http://www.java.net/forum/topic/glassfish/metro-and-jaxb/jaxb-plugin-generate-bean-validation-annotations-jsr-303][1]

@parvez是正確的,java.net鏈接已經停用,並提供了相關的當前鏈接評論功能。

+0

鏈接已死亡。我不確定它是否與https://github.com/krasa/krasa-jaxb-tools相同 – Parvez