gpt4 book ai didi

java - 关闭 SAXParserFactory 的验证

转载 作者:行者123 更新时间:2023-12-02 03:11:26 26 4
gpt4 key购买 nike

在使用 XML 的 Java 应用程序上,必须在禁用 XML 验证的情况下执行某些测试,以确保 Java 部件在遇到不正确的数据时能够正确运行。我们还需要它来检查旧方法(十多年前编写的)。

我试图找到 SAXParserFactory 的每次出现并使用

setValidation(false);

在其上,以禁用验证。不幸的是,我不断收到如下链接的错误。

SAXException stacktrace

我已经研究这个问题有一段时间了,无法与类似的案例联系起来。触发异常的元素与此类似:

Exception=org.xml.sax.SAXException, cvc-complex-type.4=Attribute 'date' must appear on element 'XXXXXXXXX'

关于正确禁用验证的正确方法有什么想法吗?

感谢您的阅读。

最佳答案

我猜你的意思是SAXParserFactory#setValidating(boolean value)。然而,该方法控制解析器是否根据 DTD 验证 XML 文档。在您的堆栈跟踪中,看起来像是使用了模式。

为了避免针对架构进行验证,您应该查找以下情况的出现SAXParserFactory#setSchema(...) 并执行任何必要的操作(删除/注释掉)。

关于java - 关闭 SAXParserFactory 的验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40992051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com