HTTP 状态 500 - 实例化 servlet 时出错 class com.zestedesavoir.servlets.Test>

TTP Status 500 - Error instantiating servlet class com.zestedesavoir.servlets.Test>

当我尝试在 Eclipse 上 运行 动态 Web 项目时收到错误消息。

文件 web.xml 在 WebContent/WEB-INF 下。

servlet 已保存在 Java Resources/src 下,名称为 "com.zestedesavoir.Test",servlet 名为 "Test.java".

有servlet代码:

package com.zestedesavoir.servlets;

import javax.servlet.http.HttpServlet;

public class Test extends HttpServlet {

}

下面是我运行http://localhost:8080/test/toto

时收到的错误信息

============================================= ====================

Jan 16, 2015 10:32:01 AM org.apache.catalina.core.ApplicationContext log
INFO: Marking servlet Test as unavailable
Jan 16, 2015 10:32:01 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Allocate exception for servlet Test
java.lang.ClassNotFoundException: com.zestedesavoir.servlets.Test>
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1295)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1147)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:520)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:501)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:120)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
    at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:827)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:135)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:610)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:537)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1085)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:658)
    at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:222)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1556)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1513)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

在 java.lang.Thread.run(来源不明)

我尝试了很多次删除 servlet 并创建一个新的,但我仍然收到相同的错误消息。

感谢您的帮助

您是否注意到 class 名称末尾那个奇怪的 > 字符?

该杂散字符在堆栈跟踪的异常消息和 HTTP 响应消息中(显然)。

您一定是在您的网络应用配置中的某处输入了错误的 class 名称。我会先检查 "web.xml" 文件,但它可能在其他地方。