【问题标题】:ClassNotFoundException: javax.servlet.AsyncContext in Jetty hello world in eclipseClassNotFoundException: javax.servlet.AsyncContext in Jetty hello world in eclipse
【发布时间】:2012-05-23 07:31:20
【问题描述】:

我已经关注链接http://wiki.eclipse.org/Jetty/Tutorial/Jetty_HelloWorld 教程(使用 Eclipse)。并查看了现有的stackoverflow here

我正在使用聚合码头 8.0.0.jar 和 8.1.3.jar 以及 servlet-api-2.5.jar。我已将这 2 个 jar 添加到类路径中,还包括 slf4j-simple-1.6.4.jar。

我还在继续

`
2012-05-23 15:23:06.813:WARN:oeji.nio: java.lang.NoClassDefFoundError: javax/servlet/AsyncContext

at org.eclipse.jetty.server.HttpConnection.<init>(HttpConnection.java:155)
at org.eclipse.jetty.server.AsyncHttpConnection.<init>(AsyncHttpConnection.java:19)
at org.eclipse.jetty.server.nio.SelectChannelConnector$SelectChannelHttpConnection.<init>(SelectChannelConnector.java:309)
at org.eclipse.jetty.server.nio.SelectChannelConnector$SelectChannelHttpConnection.<init>(SelectChannelConnector.java:303)
at org.eclipse.jetty.server.nio.SelectChannelConnector.newConnection(SelectChannelConnector.java:286)
at org.eclipse.jetty.server.nio.SelectChannelConnector$ConnectorSelectorManager.newConnection(SelectChannelConnector.java:364)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.<init>(SelectChannelEndPoint.java:71)
at org.eclipse.jetty.server.nio.SelectChannelConnector.newEndPoint(SelectChannelConnector.java:274)
at org.eclipse.jetty.server.nio.SelectChannelConnector$ConnectorSelectorManager.newEndPoint(SelectChannelConnector.java:370)
at org.eclipse.jetty.io.nio.SelectorManager$SelectSet.createEndPoint(SelectorManager.java:938)
at org.eclipse.jetty.io.nio.SelectorManager$SelectSet.doSelect(SelectorManager.java:497)
at org.eclipse.jetty.io.nio.SelectorManager$1.run(SelectorManager.java:283)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
at java.lang.Thread.run(Thread.java:679)

   Caused by: 
    java.lang.ClassNotFoundException: javax.servlet.AsyncContext
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.eclipse.jetty.server.HttpConnection.<init>(HttpConnection.java:155)
at org.eclipse.jetty.server.AsyncHttpConnection.<init>(AsyncHttpConnection.java:19)
at org.eclipse.jetty.server.nio.SelectChannelConnector$SelectChannelHttpConnection.<init>(SelectChannelConnector.java:309)
at org.eclipse.jetty.server.nio.SelectChannelConnector$SelectChannelHttpConnection.<init>(SelectChannelConnector.java:303)
at org.eclipse.jetty.server.nio.SelectChannelConnector.newConnection(SelectChannelConnector.java:286)
at org.eclipse.jetty.server.nio.SelectChannelConnector$ConnectorSelectorManager.newConnection(SelectChannelConnector.java:364)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.<init>(SelectChannelEndPoint.java:71)
at org.eclipse.jetty.server.nio.SelectChannelConnector.newEndPoint(SelectChannelConnector.java:274)
at org.eclipse.jetty.server.nio.SelectChannelConnector$ConnectorSelectorManager.newEndPoint(SelectChannelConnector.java:370)
at org.eclipse.jetty.io.nio.SelectorManager$SelectSet.createEndPoint(SelectorManager.java:938)
at org.eclipse.jetty.io.nio.SelectorManager$SelectSet.doSelect(SelectorManager.java:497)
at org.eclipse.jetty.io.nio.SelectorManager$1.run(SelectorManager.java:283)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:598)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:533)
at java.lang.Thread.run(Thread.java:679)

`

有什么想法吗?

【问题讨论】:

    标签: java jetty


    【解决方案1】:

    我认为您需要 servlet api 3,而不是 2.5。 AsyncContext 是在 Servlet 3.0 中引入的,在 2.5 中不存在。

    【讨论】:

    • 正确,你也应该更新到新版本的 jetty8,8.1.3.v20120416 是可靠的
    • Servlet api 3.0 可以从here 下载 编辑: Servlet api 3.0 解决了@Kai Sternad 回答的问题。具体来说提供链接,原因是servlet-api-3.0-alpha-1版本没有解决问题。但是,tutorials 中的 servlet api 链接提供了此版本作为 latest 下载,它不包含 AsyncContext 类,因此不'
    猜你喜欢
    • 2023-03-30
    • 2013-02-23
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 2011-12-19
    • 2018-05-10
    • 2011-08-26
    • 1970-01-01
    相关资源
    最近更新 更多