java - 您使用什么来验证 XML 模式?

标签 java validation xsd

当我想根据服务器端 Java 中的模式验证我的 XML 文档时,我使用内置的 JRE Xerces 实现和 javax.xml.validation.Schema。它工作正常,但是当验证失败时,Xerces 会给出非常接近于无用的错误消息,例如:

cvc-minLength-valid: Value '' with length = '0' is not facet-valid with respect to minLength '1' for type 'PopulatedStringType'

这些可能需要很长时间才能诊断并追踪到验证失败的 XML 文档的特定部分,而这一切都是因为错误消息不佳。

所以我的问题是,您是否使用另一种方法根据架构验证 XML,从而在验证失败时提供更有用的输出?

请注意,这是服务器端 Java,因此请不要说“使用 XML Spy”或类似内容。

最佳答案

在您的验证处理程序中,您应该收到带有该消息的 SAXParseException 以及 column number and the line number在 XML 文件中。不是这样吗?

关于java - 您使用什么来验证 XML 模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/153835/

相关文章:

ruby-on-rails - 如何验证 Ruby on Rails 表单中的外部表单字段(例如验证码)?

javascript - 单击“搜索”按钮后未收到客户端消息

xml - xsd :sequence behavior inside a xsd:all? 的替代方案是什么

java - 远程数据库连接长时间打开

java - Play Framework : Routing broken

perl - 如果传入未定义的值,则使用 Params::Validate 设置默认值

java - 为 XML 持久性选择框架

soap - XSD 中缺少响应和 DTO 对象

java - 元字符\B匹配(OCP考试)

java - 这段从字符串方法解析为整数答案的代码可以吗?