Ошибка Http404 при нажатии кнопки «Отправить» (вопрос о сервлете) - PullRequest
0 голосов
/ 24 апреля 2019

Ребята! Я новичок в сервлете. Я попытался выполнить шаг с книгой, чтобы создать сервлет. Это просто форма входа в систему, где пользователь вводит ИД пользователя и пароль, нажимая логин, после чего он должен отображать значение ввода на веб-странице. Однако, когда я ввожу идентификатор пользователя и пароль, я получаю сообщение об ошибке Http404.

Мне было интересно, что-то может быть не так с context.xml, но я не уверен. Я также пытался отобразить сервлет в XML, но все равно получаю ошибку.

вот мой 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>

вот мой сервлет.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

Описание Исходный сервер не нашел текущего представления для целевого ресурса или не хочет раскрывать, что он существует.

1 Ответ

0 голосов
/ 24 апреля 2019

вы можете проверить, что такое отображение сервлета в web.xml. Я думаю, что сопоставление не будет соответствовать запросу. или вы можете опубликовать web.xml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...