Login trong jsp servlet

Mọi người cho mình hỏi tí về chỗ đăng nhập với ạ!
Mình có 1 file login.jsp và 1 file servlet check_login.Khi mình nhấn đăng nhập bên trang jsp thì nó sẽ check tài khoản bên trang servlet. Nếu tài khoản ko đúng thì tạo 1 attribute chứa thông tin lỗi. Và load lại trang jsp mình sẽ in lỗi đấy ra. Nhưng khi chạy thì nó không hiện cái gì cả. Chỉ khi mình bỏ câu lệnh session.removeAttribute(“error”); thì nó mới hiện. Nhưng nếu bỏ câu lệnh đấy thì cái Attribute đấy vẫn tồn tại trong session và mỗi lần load lại trang thì nó lại hiện cái alert 1 lần. Mong mọi người giúp đỡ.
login.jsp

<%
     if(session.getAttribute("error") != null){
%>
          <script type="text/javascript">alert("Loi");</script>
<%
          session.removeAttribute("error");
     }
%>

check_login

String username = request.getParameter("username"); 
String password = request.getParameter("password");
HttpSession session = request.getSession();
if(Tai khoan khong ton tai){
       session.setAttribute("error", "Loi");
}
response.sendRedirect("login.jsp");

Bạn thử thay lệnh session.removeAttribute(“error”); bằng lệnh session.setAttribute(“error”, null); thử xem nhé.

vẫn không được bạn à. Thế này thì lại được nè bạn. Cái đoạn code ở file login.jsp trên mình đặt ở đầu file jsp của mình. Và cái file này rất dài. Nếu mình đưa câu lệnh session.removerAttribute() xuống gần cuối file jsp thì nó lại chạy được. Như kiểu là nếu mình để câu lệnh đấy trong điều kiện if thì nó ko chạy câu if đấy luôn

sao bạn không dùng request để chứa thông báo lỗi nhỉ , còn session chỉ chứa những thông tin quan trọng , và nếu dùng request thì cũng không cần phải viết session.remove vì khi kết thúc 1 request nó tự động xóa…

B xem loat bai huong dan cua Blog Study and Share nhe : https://www.youtube.com/watch?v=N_Z3IUA8L1Y&list=PLlSyE2TKmdTTYtYsAdhwO63yZqND5KDp6

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?