验证使用JAXB类(而不是XSD)生成的XML
如果XML是由JAXB类(而不是XSD)生成的,我就没有XSD来验证。如何验证XML?JAXB在开始解组之前是否会自动对XML进行验证?如果没有XSD,JAXB仍将执行“结构”验证。例如,如果您使用“required”或指定的特定“accessorder”对JAXB类属性进行了注释,并且输入XML与注释的值不一致,那么您将得到异常。但是,您将无法执行“数据”验证,因为特定的XML元素被限制为具有“8”字符长度(我相信JEE7将集成BeanValidation,并希望JAXB利用此规范) 现有的问题和答案可能会有所帮助:谢谢您的回复。数据验证是我正在寻找的。你有什么建议吗?就我个人而言,我还是更喜欢在XSD中进行数据验证。在您的例子中,使用JDK schemagen工具从JAXB生成XSD并进行修改以进行数据验证和遵循@Patrice建议的链接将是很容易的。您还必须认真研究Schematron。验证使用JAXB类(而不是XSD)生成的XML,xml,xsd,jaxb,jaxb2,jaxb2-basics,Xml,Xsd,Jaxb,Jaxb2,Jaxb2 Basics,如果XML是由JAXB类(而不是XSD)生成的,我就没有XSD来验证。如何验证XML?JAXB在开始解组之前是否会自动对XML进行验证?如果没有XSD,JAXB仍将执行“结构”验证。例如,如果您使用“required”或指定的特定“accessorder”对JAXB类属性进行了注释,并且输入XML与注释的值不一致,那么您将得到异常。但是,您将无法执行“数据”验证,因为特定的XML元素被限制为具有“8”字符长度(我相信JEE7将集成BeanValidation,并希望JAXB利用此规范) 现有的问