java - 无需特定 XSD 即可验证 XML

标签 java xml validation

我在使用 XMLInputFactory 创建 XMLStreamReader 时尝试验证(有效的 xml 文件)xml。

我知道可以在工厂javax.xml.stream.isValidating中设置一些属性来允许特定的实现验证(在我的例子中是xml)。但我正在使用 java 6 build 43 (Jboss eap 6.0) 并且无法更新,所以这对我不起作用(kwnon 问题)。

因此,如果有人知道任何 API(StAX 除外)可以做同样的事情,那就太好了! 如果有不清楚的地方请告诉我。

最佳答案

找到了,我使用 api SAX 使用提供的 SAXParserFactory 创建一个解析器(独立于 xsd 模式)并解析该文件。 (更多详细信息请参见第 (23/24) 页 http://apiacoa.org/publications/teaching/xml/api-xml.pdf )

此外,不要忘记在使用解析器解析输入流之前/之后标记/重置输入流(如果 xml 文件格式不正确,则会抛出异常),这样您就可以在解析时保持原样不会失败。

关于java - 无需特定 XSD 即可验证 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26733261/

相关文章:

java - 使用 openImaj API 库进行人脸对齐

WPF:Validation.ErrorTemplate 未显示

python - 使用 html5lib 验证 HTML 片段

PHP 验证链接到下一页

java:如何才能看到 JScrollPane 的后面?

Java Servlet 不能在 Tomcat 上运行

java - Queue q = new LinkedList 和 LinkedList q = new LinkedList 之间的区别?

java - 带有命名空间的 XSLT 属性

c# - 用 html 值替换 xml 标签

java - 在spring xml中定义Camel路由有什么优缺点?