外部 DTD: 无法读取外部 DTD ‘XXXXX.dtd‘, 因为 accessExternalDTD 属性设置的限制导致不允许

如果是使用Ibatis内置的XPathParser的构造方法时,出现的这个错误,则有四种解决方案。

一、也是我最终使用的方法。不远程下载DTD,使用内置的EntityResolver代替,查看XPathParser的源码,可以发现有非常多的构造方法。选择取其中一个含有EntityResolver的构造方法使用可以避免远程访问DTD:

使用Reader配合EntityResolver创建XPathParser:

Reader reader = Resources.getResourceAsReader("yourxml.xml");
XPathParser xPathParser =  new XPathParser(reader, true, (Properties)null, new XMLMapperEntityResolver());

二、来源网络未经本人测试:将xml文件移动至resources目录下。

三、来源网络未经本人测试:使用jaxp.properties

// 在%JAVA_HOEE%\jre\lib\ 目录下,新建文件jaxp.properties,内容:
javax.xml.accessExternalSchema=all
javax.xml.accessExternalDTD=all

四:来源网络未经本人测试:Fetch external resource

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
config_1_0.dtd是一种定义文档类型的标准通用标记语言 (SGML) 文件,用于配置文件的定义与解析。它定义了配置文件中的元素和属性,帮助开发人员更好地理解和使用配置文件。 config_1_0.dtd通常由XML(可扩展标记语言)文件使用。XML是一种用于存储和传输数据的标记语言,而配置文件就是一种特殊的XML文件,用于保存程序或系统的配置信息。 config_1_0.dtd中包含了一些预定义的元素和属性,开发人员可以根据自己的需要添加、修改或删除这些元素和属性。通过遵循config_1_0.dtd的规范,开发人员可以确保配置文件的正确性和一致性。 使用config_1_0.dtd,开发人员可以轻松地定义配置文件中的各种元素和属性,并为它们指定相应的类型、默认值和约束条件。这使得配置文件更加清晰和易于理解,同时也降低了配置文件解析的难度。 而对于使用配置文件的程序或系统来说,config_1_0.dtd提供了一种规范和约束,可以减少因配置文件错误或不一致带来的问题。它使得程序或系统更加可靠和稳定,能够更好地满足用户的需求。 总之,config_1_0.dtd是一种用于定义配置文件结构和内容的标准,它帮助开发人员更好地理解和利用配置文件,并为程序或系统的配置提供了一种规范和约束。这将提高软件开发的效率和质量,使得程序或系统更加健壮和可靠。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值