我在Eclipse上创建了简单的动态Web项目。我正在尝试提交html表单并将请求传递给servlet。当我单击提交时,出现此异常:

HTTP Status 500包装器找不到servlet类com.tcs.navigator.Servlet.labServlet或它依赖的类

在jsp形式actoin标签中,我给出了与每个Web xml相同的操作路径,即:

动作=“ labServlet”

web.xml的内容是:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

  <welcome-file-list>
    <welcome-file>home.jsp</welcome-file>

  </welcome-file-list>
  <servlet>
    <description>To Upload Files for processing</description>
    <display-name>labServlet</display-name>
    <servlet-name>labServlet</servlet-name>
    <servlet-class>com.tcs.navigator.Servlet.labServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>labServlet</servlet-name>
    <url-pattern>/labServlet</url-pattern>
  </servlet-mapping>

</web-app>


我尝试了以下解决方法:


清理tomcat目录
打开/关闭项目
清洁项目
重新开始蚀
验证课程路径
使用相同的代码创建了新的动态Web项目


但是仍然存在相同的例外。

像servlet-api.jar这样的所有库都位于构建路径中。

最佳答案

您已将大写S保留在“ Servlet.labServlet”中。系统将其作为名为Servlet的类来获取。在代码中以“ LabServlet”之类的大写字母命名您的servlet,并以小写字母开头所有的包名称。因此您的完整课程路径应为

com.tcs.navigator.servlets.LabServlet

09-12 18:24