java.lang.NoSuchMethodError:javax.servlet.http.HttpServletRequest.isAsyncStarted

Posted

技术标签:

【中文标题】java.lang.NoSuchMethodError:javax.servlet.http.HttpServletRequest.isAsyncStarted【英文标题】:java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted 【发布时间】:2016-08-19 15:30:14 【问题描述】:

我一直在尝试运行一个简单的动态 Web 项目并收到 HTTP 500 内部服务器错误,但我不确定如何阅读输出以了解我需要做些什么来纠正这种情况。

运行项目时控制台的输出(与运行 index.htm 时相同):

在端口 8080 上启动预览服务器

模块:HelloWorld (/HelloWorld)

2016-04-25 20:36:05.796:INFO::main: 日志记录已初始化 @299ms 2016-04-25 20:36:05.897:INFO:oejs.Server:main: jetty-9.2.13.v20150730 2016-04-25 20:36:06.045:INFO:oejw.StandardDescriptorProcessor:main: NO /HelloWorld 的 JSP 支持,没有找到 org.eclipse.jetty.jsp.JettyJspServlet 2016-04-25 20:36:06.070:INFO:oejsh.ContextHandler:main: 开始 oejwWebAppContext@2c8d66b2/HelloWorld,file:/C:/Users/Joseph/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/HelloWorld/,AVAILABLEC:/Users/Joseph /workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/HelloWorld 2016-04-25 20:36:06.131:INFO:oejs.ServerConnector:main: 开始 ServerConnector@531be3c5HTTP/1.10.0.0.0:8080 2016-04-25 20:36:06.132:INFO:oejs.Server:main: 开始 @638ms 2016-04-25 20:36:08.154:WARN:oejs.ServletHandler:qtp1225358173-14:错误 /HelloWorld/java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:595) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:191) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:72) 在 org.eclipse.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:588) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 在 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:36:08.156:WARN:oejs.HttpChannel:qtp1225358173-14:/HelloWorld/ java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:41:36.005:WARN:oejs.ServletHandler:qtp1225358173-20:错误 /HelloWorld/java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:595) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:191) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:72) 在 org.eclipse.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:588) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 在 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:41:36.005:WARN:oejs.HttpChannel:qtp1225358173-20:/HelloWorld/ java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:41:47.649:WARN:oejs.ServletHandler:qtp1225358173-14:错误 /HelloWorld/java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:595) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:191) 在 org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:72) 在 org.eclipse.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:588) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 在 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:41:47.650:WARN:oejs.HttpChannel:qtp1225358173-14:/HelloWorld/ java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:43:02.742:WARN:oejs.ServletHandler:qtp1225358173-16:错误 /HelloWorld/index.htm java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncSupported()Z 在 org.eclipse.jetty.servlet.DefaultServlet.sendData(DefaultServlet.java:926) 在 org.eclipse.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:534) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:707) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:820) 在 org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745) 2016-04-25 20:43:02.742:WARN:oejs.HttpChannel:qtp1225358173-16: /HelloWorld/index.htm java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted()Z 在 org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:684) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) 在 org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) 在 org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) 在 org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) 在 org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) 在 org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) 在 org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) 在 org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) 在 org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:52) 在 org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) 在 org.eclipse.jetty.server.Server.handle(Server.java:499) 在 org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) 在 org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) 在 org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) 在 org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) 在 org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) 在 java.lang.Thread.run(Thread.java:745)

我使用的是最新版本的 Eclipse 和 Java 1.8.0_71

HelloWorld.java 的代码如下:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class HelloWorld extends HttpServlet 

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
    
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("");
        out.println("");
        out.println("Hello World!");
        out.println("");
        out.println("");



index.htm 中的代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<a href="HelloWorld">Execute</a>
</body>
</html>

只是为了确保我也会发布 web.xml 文档

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>HelloWorld</display-name>
    <servlet>
        <description>
        </description>
        <display-name>HelloWorld</display-name>
        <servlet-name>HelloWorld</servlet-name>
        <servlet-class>HelloWorld</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>HelloWorld</servlet-name>
        <url-pattern>/HelloWorld</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
        <welcome-file>index.htm</welcome-file>
        <welcome-file>index.jsp</welcome-file>
        <welcome-file>default.html</welcome-file>
        <welcome-file>default.htm</welcome-file>
        <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
</web-app>

【问题讨论】:

java.lang.NoSuchMethodError: javax.servlet.http.HttpServletRequest.isAsyncStarted() while using Mockito with Junit的可能重复 我在导师的指导下使用 Dynamic Web Module 2.4(因为我们将使用需要该版本的 SQL 数据库做一些事情,我想?),所有其他选项都是默认选项。我尝试使用 Dynamic Web Module 3.0 并得到同样的错误。有没有我遗漏的部分? 【参考方案1】:

说实话,INFO 的前几行: /HelloWorld 不支持 JSP,

由于您使用路径 /HelloWord 映射了 HelloWorld Servlet 您必须创建相应的 JSP 才能修复此错误。

可以利用 Servlet 创建 Web View,但这是 一个MVC模型,Servlet和JSP作为控制器和视图。您不应该在控制器内执行视图操作。

看看你是否可以通过删除来修复信息 /你好世界 在你的 web.xml 中

以及关键错误部分: /HelloWorld/ java.lang.NoSuchMethodError 的错误:javax.servlet.http.HttpServletRequest.isAsyncStarted()Z

isAsyncStarted 没有这样的方法,你确定你使用的是正确的 API 级别吗?要使用此方法,您必须使用版本 3.0 而不是 web.xml 文件中所述的 2.4。

【讨论】:

我什至不知道 JSP 是什么,我的老师在他所做的任何示例中都没有提到或制作过一个。他刚刚创建了一个 2.4 版的动态 Web 项目,创建了 servlet 和 html 文件,然后它就运行了。一个月以来,我一直在尝试给他发电子邮件,但我得到的只是指向我已经梳理了几个小时的视频的链接。我像你说的那样尝试了 3.0,但它返回了相同的错误代码。 我怀疑您使用的是Jetty,这是一个更容易使用的jsp servlet框架,但它也带有不同的规则,可能与您的老师不同,课程需要Jetty吗?否则我只会使用 Java EE ecplise 从头开始​​(或 Spring mvc 用于以后的工作) 不,不需要 Jetty。不过,我以为我正在使用 Java EE eclipse 来制作它。我已选择它作为透视图,并为 Java EE 开发人员下载了 Eclipse。【参考方案2】:

很遗憾,在继续使用最新的 Mars 版本的 Eclipse 时,我无法获得解决方案。但是,我切换到了 Eclipse 的最后一个 Kepler 版本(我发现这是老师在录音时使用的版本)并且所有问题都已解决。

【讨论】:

以上是关于java.lang.NoSuchMethodError:javax.servlet.http.HttpServletRequest.isAsyncStarted的主要内容,如果未能解决你的问题,请参考以下文章