Я пытался создать программу с сервлетом выхода из системы, используя cookie, но я получаю сообщение об ошибке 404? - PullRequest
0 голосов
/ 16 октября 2019

вот моя программа для сервлетов, где я пытался сбросить файл cookie

  package trainapp;
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    @SuppressWarnings("serial")
    public class LogoutServlet extends HttpServlet {
    @Override
    public void doGet(HttpServletRequest req,HttpServletResponse res) throws IOException, ServletException
    {
    PrintWriter pw=res.getWriter();

    res.setContentType("text/html");
    pw.println("<body style=color:#A93226;background-color:#FDF2E9>");
    Cookie ck[]=req.getCookies();
    ck[0].setValue("");
    ck[0].setMaxAge(0);
    pw.println("Logged Out Sucessfully..<br>");
    RequestDispatcher rd=req.getRequestDispatcher("home.html");
    rd.include(req, res);
    }

    }

web.xml, это часть XML-файла

 <servlet>
    <servlet-name>LogoutServlet</servlet-name>
    <servlet-class>trainapp.LogoutServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>LogoutServlet</servlet-name>
    <url-pattern>/logout</url-pattern>
    </servlet-mapping>

вот мой html-файл html-кодчасть, где я использовал гиперссылку для выхода сервлета

 <!DOCTYPE html>
    <html>
    <head>
    <meta charset="ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <a href="view2">View Trains</a>
    <a href="/logout">Logout</a>
    </body>
    </html>

1 Ответ

0 голосов
/ 16 октября 2019

Просто замените следующие

<a href="/logout">Logout</a>

на

<a href="logout">Logout</a>

Обновление:

Если у вас ничего не получится, начните с минимальногоНапример, измените ваш сервлет с кодом, приведенным ниже, и проверьте, работает ли он.

public class LogoutServlet extends HttpServlet { 
   public void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {      
      response.setContentType("text/html");
      PrintWriter out = response.getWriter();
      out.println("<h1>Hello World!</h1>");
   }
}

Если это работает, то начните изучать ваш код, чтобы найти основную причину.

...