You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tomcat 8无法读取JNDI XML文件,报DOCTYPE根元素匹配错误如何解决?

问题根因

Tomcat解析Context配置文件时要求匹配对应DTD约束,缺少正确的DOCTYPE声明就会触发根元素匹配失败的异常。

修正后的完整配置

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Context PUBLIC "-//Apache Software Foundation//DTD Context 1.0//EN" "http://tomcat.apache.org/dtds/tomcat-8.0-context.dtd">
<Context path="/myapp" reloadable="true">
    <Resource auth="Container" name="jdbc/myapp" 
    driverClassName="oracle.jdbc.driver.OracleDriver"
    password="password" 
    username="username"
    type="javax.sql.DataSource" 
    url="jdbc:oracle:thin:@192.168.1.33:1521/xe" />
</Context>

配置优化建议

  • 若你将该配置文件放在应用META-INF/context.xml路径下,不需要手动配置path属性,Tomcat会自动根据war包名称匹配上下文路径,手动配置的path在部分部署场景下会不生效
  • Tomcat 8已经废弃了debug属性,上述配置已经移除了该冗余属性
  • 生产环境建议将reloadable属性设置为false,避免运行时类重载带来的性能损耗和稳定性风险

内容的提问来源于stack exchange,提问作者AppleT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 16:54:04