Validation for generated JAXB Classes (JSR 303 / Spring)

删除回忆录丶 提交于 2019-12-04 03:13:14

We've been using the Krasa JAXB plugin to generate JSR 303-annotated model beans from XSD files, and then telling Spring to automatically validate the input beans. This results in very nice, very terse, very DRY code if you have good XSDs.

You can, indeed, do this, via jsr-303 xml configuration. See, for example, http://www.aviyehuda.com/2010/04/using-hibernate-validator-to-cover-your-validation-needs/.

For NotNull/Empty validation you can use jaxb restriction in schema

here is an example:

<xsd:simpleType name="NotEmptyString">
  <xsd:restriction base="xsd:string">
    <xsd:minLength  value="1"/>
  </xsd:restriction>
</xsd:simpleType>

Or you can use regular expression patterns:

<xsd:simpleType name="DirType">
  <xsd:restriction base="xsd:string">
    <xsd:pattern value="[LR]*"/>
  </xsd:restriction>
</xsd:simpleType>

Note: the simple type doesn't warrant a class definition of its own. Java's own java.lang.String is used, and the length restriction isn't checked unless you request it via setEventHandler() .

more info http://jaxb.java.net/tutorial/section_3_3-Validation.html#Validation

You are on the right path to generate the JAXB. Click Here to see How JSR 303 Works with POC

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!