File "/struts-tags" not found

本文探讨了在使用Struts标签库时出现的File/struts-tagsnot found异常,发现修改Tomcat的catalina.properties文件虽能解决StackOverflowError异常,却导致了新的问题。最终解决方案为恢复文件默认配置或移除对标签库的引用。

前言

由于在某个jsp引用了struts标签库,导致该错误产生--这是stuts项目算是一道经典错误,往往最后的解决方式是更换Tomcat。今天我记录的是引起这一错误的一个非常隐藏的原因。

错误描述

JSP

启动发生错误

原因

换了Tomcat可以很好的解决此问题,但令人不解的是为何如此?笔者经过对比,发现了原因:

由于某项目启动发生StackOverflowError  异常(具体参见此文章),修改Tomcat的catalina.properties文件可避免此异常,修改之处如下

而这处修改虽然能够很好的解决StackOverflowError  异常,但这是会造成本文所说的File "/struts-tags" not found 异常。所以解决方式就是:1.这里catalina.properties文件恢复默认配置(但这样一来就是某项目也无法启动)。2.页面不引用标签库。

至于其中原因笔者本想通过调试一探究竟,然而现在还不知如何调试Tomcat的源码包。按StackOverflowError 文章中所叙述的大概是因为Tomcat在启动时会扫描所以jar,而加上 ,* 就不会递归扫描了。。。

顺便说一下,不仅是struts,JSTL也会这样。

后记

以后有机会一定把此问题和StackOverflowError 问题一起研究,弄清楚Tomcat的启动扫包问题。此外,当遇到StackOverflowError异常后,争取换其他方式而不是更改catalina.properties文件的方式。

 

转载于:https://www.cnblogs.com/wql025/p/5270068.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值