01/10/2018, 01:17

StackOverFlowError khi start Tomcat 8 [Solved]

Mình gặp lỗi StackOverFlowError khi start Tomcat 8, khi nhấn vào link để tới dòng lỗi thì câu lệnh là :

rd.forward(request, response);

Đây là class Servlet gặp lỗi của mình

package Servlets;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

 public class RedirectServlet extends HttpServlet {

private final String LoginServlet = "LoginServlet";
private final String LoginPage = "login.html";
private final String SearchServlet = "SearchServlet";

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");
    PrintWriter out = response.getWriter();
    String url = "";
    String button = request.getParameter("btAction");
    try {
        if (button != null) {
            if (button.equals("Login")) {
                url = LoginServlet;
            } else if (button.equals("Search")) {
                url = SearchServlet;
            }
        }else{
            url = LoginPage;
        }
    } finally {
        RequestDispatcher rd = request.getRequestDispatcher(url);
        rd.forward(request, response);
        out.close();

    }
}

// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
 * Handles the HTTP <code>GET</code> method.
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

/**
 * Handles the HTTP <code>POST</code> method.
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    processRequest(request, response);
}

/**
 * Returns a short description of the servlet.
 *
 * @return a String containing servlet description
 */
@Override
public String getServletInfo() {
    return "Short description";
}// </editor-fold>

}

Mình đã dò trên mạng nhưng cũng không giải quyết được vấn đề. Mong mọi người giúp đỡ

*grab popcorn* viết 03:21 ngày 01/10/2018

Bạn có thể nén toàn bộ source code lại được không

Tynk Huynk viết 03:28 ngày 01/10/2018

Đế sáng mai anh nhé, em giờ cũng stress lắm rồi

Phan Bá Hải viết 03:22 ngày 01/10/2018

Mình từng bị StackOverFlowError khi làm web Java. Lúc đó mình nhấn chuột phải vào project chọn clean xong deploy lại thì chạy bình thường
Bạn thử cách đó xem

Tynk Huynk viết 03:29 ngày 01/10/2018

Update: sáng náy mở máy chạy lại thì không còn vấn đề đó nữa . Cảm ơn mọi người nhiều !!!

Bài liên quan
0