gpt4 book ai didi

java - 了解如何在 Eclipse 中运行 servlet

转载 作者:搜寻专家 更新时间:2023-11-01 02:18:09 24 4
gpt4 key购买 nike

我正在为我的一项家庭作业编写一个简单的航类预订应用程序。我的航类预订网站有登录、注册、航类搜索、结果显示和确认 JSP 页面。我想在用户尝试执行某个操作时调用 servlet,例如:

用户转到 login.jsp 并单击“登录”按钮,表单有一个目标/core/Login(核心是我的核心 servlet,而登录是应该处理该请求的相应 servlet)。

在之前的作业中我们编写了自己的网络服务器,所以我没有使用 Tomcat 来部署 serlvet...现在我们不再使用我们自己的网络服务器,我在弄清楚如何做时遇到了一些麻烦让 servlet 在 Eclipse 中运行。

我在 Eclipse 中创建了一个动态 Web 项目,它自动生成了以下文件夹结构:

../P3  
../P3/src
../P3/src/core
../P3/build
../P3/WebContent
../P3/WebContent/META-INF
../P3/WebContent/WEB-INF

我的 login.jsp 有一个表单,填写并单击后会将结果提交到我的核心包中的登录 servlet:

 <form name="input" action="src/core/Login" method=GET>
Username: <input type="text" name="userName" />
<br>
Password: <input type="password" name="password" />
<br>
<input type="submit" value="Login" />
</form>

Eclipse 有一个内置浏览器,所以当我运行 login.jsp 时,它会在 Eclipse 浏览器中加载并显示它。当我单击“登录”按钮时,它应该将用户名和密码发送到登录 servlet,但我却收到以下错误:

HTTP Status 404 - /P3/src/core/Login

--------------------------------------------------------------------------------

type Status report

message /P3/src/core/Login

description The requested resource (/P3/src/core/Login) is not available.

出于某种原因,服务器不知道 servlet...我已经阅读了几篇(firstsecond)在线文章,解释了可能出现的问题,但我仍然遇到错误。我尝试了第一篇文章中的解决方案,但没有用;第二篇文章并不适用,因为服务器 settings.xml 文件已经包含正确的标志和目录。

这是我的 WEB-INF/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">
<display-name>P3</display-name>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<servlet>
<description></description>
<display-name>Registration</display-name>
<servlet-name>Registration</servlet-name>
<servlet-class>core.Registration</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Registration</servlet-name>
<url-pattern>/Registration</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>Register</display-name>
<servlet-name>Register</servlet-name>
<servlet-class>core.Register</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Register</servlet-name>
<url-pattern>/Register</url-pattern>
</servlet-mapping>
<servlet>
<description></description>
<display-name>Login</display-name>
<servlet-name>Login</servlet-name>
<servlet-class>core.Login</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/Login</url-pattern>
</servlet-mapping>
</web-app>

我应该如何设置我的项目以便它在 Eclipse 中正确部署?

最佳答案

表单操作 action="src/core/Login" 与 servlet 映射 /Login 不匹配。表单操作应指向 URL,而不是本地磁盘文件系统路径。

关于java - 了解如何在 Eclipse 中运行 servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2352423/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com