栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory的解决方法

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

The method getJspApplicationContext(ServletContext) is undefined for the type JspFactory的解决方法

环境:本次使用Tomcat7
工具:eclipse
Myeclipse控制台Console中显示的错误信息:

严重: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: 23 in the generated java file The method
getJspApplicationContext(ServletContext) is undefined for the type
JspFactory Stacktrace:
at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:118)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:230)
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:369)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:256) at
…(此处省略n行)
at java.lang.Thread.run(Thread.java:589)

  • 出错原因:
    项目包中存在与tomcat7的lib中同样的包,例如jsp-api.jar servlet-api.jar(一般都是这两个包),
    在运行的时候,会优先加载项目中的包,而项目包中的.jar版本可能和我们所需要的版本不符,所以会产生错误。
  • 解决方案:

把项目中和tomcat相同的包删除,注意必须是删除哦,如果只替换还可能会产生其他的错误。用心的童鞋可以进行备份。一般删除jsp-api.jar servlet-api.jar两个文件就可以解决。
这里想要强调的是,一定要找到项目对应文件包路径。

我本次的项目文件为intelagr,而jar包存在的路径为:

而不是我的项目工作路径:

注意:

一般在控制台中会提示出错文件的具体路径,我们根据控制台中提示的路径,找到对应文件夹即可。

要记得在jdk的安装包下,也要将上述.jar文件删除哦(备份以防万一)!
完成上述操作,我们利用ALT+F5对maven项目进行刷新,刷新后即可运行。运行可能会出现如下提示:

如果你也出现了如上提示,直接忽略即可。如果没有错误 ,我们的程序是可以正常运行哒。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/489437.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号