伙计们!我是servlet的新手。我尝试按照书的步骤创建一个servlet。它只是一个登录表单,用户输入用户名和密码点击登录,然后应该在网页中显示输入值。但是,当我输入userId和密码时,我收到Http404错误。
我想知道context.xml可能有什么问题,但我不确定。我还尝试在xml中映射servlet,但仍然得到错误。
这是我的HTML
<!DOCTYPE html>
<html>
<head>
<title>USER LOGIN</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial- scale=1.0">
</head>
<body>
<form action="UserServlet" method="get">
<!-- Name text Field -->
<p>
<label>User ID</label>
<input type ="text" name="userId" size="30"/>
</p>
<p>
<label>User Password</label>
<input type ="text" name="userPassword" size="30"/>
</p>
<!--Button for submit -->
<input type ="submit" name="Login" value="LogIn"/>
<input type ="button" value="LogOut" onclick="self.close()"/>
</form>
</body>
这是我的servlet.java
public class UserServlet extends HttpServlet
{
//process the HTTP GET REQUEST//
@Override
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
//get the data
String userId=request.getParameter("userId");
String passWord=request.getParameter("userPassWord");
//determine the input if user missing these two send back the message
if (userId.isEmpty()&&passWord.isEmpty())
{
out.println("UserId and passWord can not be empty.");
}
else
{
out.println("<p>your id is "+userId);
out.println("<br>your password is"+passWord);
out.println("<br>You entered the data successfully </p>");
}
}
}
这是我的context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/userLogin"/>
我没有在context.xml中更改任何内容
它在我运行项目时工作,但是一旦我点击按钮就会给我
输入状态报告
消息/用户登录/使用Servlet
描述源服务器未找到目标资源的当前表示,或者不愿意透露存在该目标资源。
你能检查一下web.xml中提供的servlet映射是什么吗?我认为映射不符合请求。或者您可以发布web.xml