0

在我之前的帖子之后我已将所有源文件删除到一个名为的包model中,现在该项目在执行时拒绝加载http://localhost:8080/MyFirstServlet

我怀疑罪魁祸首是web.xml,这是文件:

网页.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">
  <display-name>MyFirstServlet</display-name>
  <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>

  <servlet>
   <description></description>
   <display-name>LoginServlet</display-name>
   <servlet-name>LoginServlet</servlet-name>
   <servlet-class>model.LoginServlet</servlet-class>
 </servlet>


  <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/model/LoginServlet</url-pattern>
  </servlet-mapping>
</web-app>

  [1]: https://stackoverflow.com/questions/11282231/jsp-page-wont-move-the-another-page-after-user-enters-the-input/11283006#11283006

这是 index.jsp:

<%@ page language="java" contentType="text/html; charset=windows-1255"
    pageEncoding="windows-1255"%>
<!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=windows-1255">
<title>Insert title here</title>
</head>
<body>
<form action="model/LoginServlet" method="POST">
        First Name: <input type="text" name="firstName" size="20"><br>
        Last Name: <input type="text" name="lastName" size="20">
        <br><br>
        <input type="submit" value="Submit">
</form> 

</body>
</html>

这是项目的层次结构:

等级制度

当我执行http://localhost:8080/MyFirstServlet并到达这里时:

在此处输入图像描述

我输入firstsecond进入文本字段,然后得到这个:

在此处输入图像描述

我试图修复它,但没有任何效果,所以我很感激任何建议,谢谢:)

4

4 回答 4

1
<servlet>
   <description></description>
   <display-name>LoginServlet</display-name>
   <servlet-name>LoginServlet</servlet-name>
   <servlet-class>model.LoginServlet</servlet-class>
 </servlet>

您错过了 servlet 类的包。

于 2012-07-01T15:50:11.993 回答
1

你形成行动应该是

<form action="model/LoginServlet" />

并且您的登录 servlet 应该正确定义包。

package model;

此外,您的 web.xml 必须通过完全限定名称声明此 servlet 类

model.LoginServlet

您的 servlet 必须扩展 HttpServlet。

如果您确保上述所有内容都正确到位并且仍然无法正常工作。然后,您可能需要在 Eclipse 中检查此项目的构建路径设置。

于 2012-08-17T10:27:11.470 回答
0

堆栈跟踪清楚地显示了错误是什么,ClassNotFoundException 表示 servlet 容器无法在 web.xml 中找到指定的类。

于 2012-07-01T16:21:31.670 回答
0

LoginServlet.java 中的第一行代码应该是

package model;
于 2012-07-01T16:32:35.793 回答