这个错误应该就是没有成功加载tomcat自带的jar包jsp-api.jar。
在网上看到很多网友说要把tomcat/lib下的jsp-api.jar拷贝到项目/WEB_INF/lib下并导入,本人试了一下这是有问题的,这样虽然在启动tomcat的时候不会报错了但是在运行程序(比如打开网页)的时候就会报错,因为jar包冲突了。
解决办法:
1.引用jsp-api.jar
项目右键-->properties-->java Build Path-->Libraries-->add External JREs-->tomcat下的jsp-api.jar
2.直接整体加入tomcat的jar包
项目右键-->properties-->java Build Path-->Libraries-->Add library-->Server Runtime-->Apache Tomcat xx
注意:当你已经引用了tomcat/lib下的jsp-api.jar,在运行程序的时候如果报一下错误
java.lang.ClassCastException: org.apache.struts.taglib.bean.CookieTei cannot be cast to javax.servlet.jsp.tagext.TagExtraInfo
需要去你发布的项目下:也就是/tomcat xxx/webapps/项目名/WEB-INF/lib下去删除jsp-api.jar,然后重启tomcat。