为了账号安全,请及时绑定邮箱和手机立即绑定

对于类型HttpServletRequest的方法,未定义方法getDispatcherType()

对于类型HttpServletRequest的方法,未定义方法getDispatcherType()

鸿蒙传说 2019-10-22 22:12:51
当我从Eclipse运行我的应用程序时,它对servlet api 3.1.0和3.0.1的运行没有任何错误。<dependency>    <groupId>javax.servlet</groupId>    <artifactId>javax.servlet-api</artifactId>    <version>3.1.0</version></dependency>我将tomcat 8.0.21用于日食。我已经在运行tomcat 8.0.14稳定版本的ubuntu机器上设置了tomcat8。不幸的是,如果我使用servlet api 3.1.0,则会收到以下错误消息。但是它适用于旧版本3.0.1。root causeorg.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: [50] in the generated java file: [/var/lib/tomcat8/work/Catalina/localhost/ROOT/org/apache/jsp/WEB_002dINF/view/templates/login_002dtemplate_jsp.java]The method getDispatcherType() is undefined for the type HttpServletRequestStacktrace:    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:103)    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:199)    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:450)    org.apache.jasper.compiler.Compiler.compile(Compiler.java:361)    org.apache.jasper.compiler.Compiler.compile(Compiler.java:336)    org.apache.jasper.compiler.Compiler.compile(Compiler.java:323)    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)    javax.servlet.http.HttpServlet.service(HttpServlet.java:725)为什么会出现此错误?如何解决这个问题?
查看完整描述

3 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

对于Maven用户,您可以在这里找到几个不错的答案。


我仍处于黑暗时代,并且没有为Tomcat项目使用依赖项管理器。如果您像我一样遇到此问题,请按照以下方法解决:Tomcat提供了javax.servlet类,因此这些类不必位于项目的lib文件中。(我原来servlet-api-2.5.jar在/WEB-INF/lib目录中有。)但是,您可能仍需要编译它(我做了),因此您应该将其移动到java类路径中包含的位置。您可能还需要告诉您的IDE外观。


希望能有所帮助。


查看完整回答
反对 回复 2019-10-22
  • 3 回答
  • 0 关注
  • 1631 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信