我正在使用xjc从我的XML模式为JAX-WS web服务生成java类。
在我的模式中,我为逗号分隔的整数列表指定类型:
<xs:simpleType name="IntegerList">
<xs:restriction base="xs:string">
<xs:pattern value="(d+,)*d+" />
</xs:restriction>
</xs:simpleType>
当这种类型的元素通过xjc转换为java类时,它们成为String对象(正如它们应该的那样),但是正则表达式验证丢失。
我在某个地方读到@Pattern注释应该用于regex的
为什么xjc不使用这个注释,我怎么能在Java中修复它来执行正则表达式验证?
谢谢你的帮助
我自己没有尝试在xjc中使用模式限制。根据下面的文章,我相信xjc本身并没有创建@Pattern限制,但是一个有进取心的人在java.net上发布了一个定制,该定制被宣传为管理@Pattern的创建(以及其他)。[http://www.java.net/forum/topic/glassfish/metro -和- jaxb/jaxb插件生成bean -验证-注释jsr - 303] [1]
@parvez是正确的,java.net链接已经退役,并在注释中提供了一个相关的当前链接到功能。