私は MVC フレームワークを使用してプロジェクトを作成しています。複数のページでセッションを作成し、すべてのページにアンカー タグが表示され (ログアウト)、ユーザーを最初のページ (ログイン ページ) にリダイレクトします。私がやろうとしているのは、ユーザーがログインページにリダイレクトされたときに、既存のセッションが存在するかどうかを確認し、存在する場合はセッションを無効にし、ユーザーは再度ログインする必要があることです。しかし、ユーザー名/パスワードを入力せずに送信をクリックすると、セッションを無効にした後、コードが機能しません。古い値が引き続き使用されます...どこが間違っているのか教えてください??
<jsp:useBean id="theBean" class="pack.java.MyModel"/>
<jsp:setProperty name="theBean" property="name" param="userName"/>
<jsp:setProperty name="theBean" property="pass" param="userPass"/>
<%@ taglib uri="/WEB-INF/jsp2/taglib1.tld" prefix="easy" %>
<html>
<head>
</head>
<body >
<form method="post">
<h1>Login please</h1>
Enter username : <input type = text name = userName >
</br>
Enter password : <input type = password name = userPass >
</br>
<input type = submit name = submit value = submit>
</br>
<%
HttpSession session=request.getSession(false);
if(session!=null)
{
session.invalidate();
}
String btn = request.getParameter("submit");
if(btn!=null)
{
%>
<easy:myTag/>
<%
}
%>
</form>
</body>
</html>