伙计们!我是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中的任何内容
当我运行项目时它可以正常工作,但是一旦我单击按钮,它就会给我
类型状态报告
消息/ userLogin / UserServlet
描述原始服务器找不到目标资源的当前表示,或者不愿意透露该资源的存在。
答案 0 :(得分:0)
您能否检查web.xml中提供的servlet映射是什么?我认为映射将不匹配请求。 或者您可以发布web.xml