开发者社区> 问答> 正文

Tomcat 7.0.25 的一个问题

Tomcat 前两天刚刚发布了 7.0.25 版本,不过有用户报告在使用中发现了一个问题:
当项目中不包含 WEB-INF/classes 目录时,Tomcat 7.0.25 将会报告一个错误日志,这个问题在之前的任何一个版本中都不存在,似乎问题出在下面的代码中:

webinfClasses = context.getServletContext().getResource(
     "/WEB-INF/classes");
 processAnnotationsUrl(webinfClasses, webXml);
 
and now has
 
 NamingEnumeration<Binding>  listBindings =
     context.getResources().listBindings("/WEB-INF/classes");
 while (listBindings.hasMoreElements()) {
     Binding binding = listBindings.nextElement();
     if (binding.getObject() instanceof FileDirContext) {
     File webInfCLassDir =
         new File(
         ((FileDirContext) binding.getObject()).getDocBase());
     processAnnotationsFile(webInfCLassDir, webXml);
     }
 }

异常信息是:
2016-05-23 09:13:01,010 ERROR [pool-8-thread-1] org.apache.catalina.startup.ContextConfig - Unable to determine URL for WEB-INF/classes
javax.naming.NameNotFoundException: Resource /WEB-INF/classes not found
at org.apache.naming.resources.BaseDirContext.listBindings(BaseDirContext.java:733)
at org.apache.naming.resources.ProxyDirContext.listBindings
目前该 bug 已经报告出来:

https://issues.apache.org/bugzilla/show_bug.cgi?id=52511

展开
收起
落地花开啦 2016-03-24 17:50:42 1885 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    的确有一些项目是没有 classes 目录的,暂时手工建一个就可以了

    2019-07-17 19:13:11
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Apache Tomcat 的云原生演进 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载