タイムアウト画面を表示させるには
アプリケーションサーバー(Tomcatとか)でレルムのフォーム認証していたとする。一定時間操作がなくてセッションが破棄された時に保護されたページにアクセスするとweb.xmlの
login.jsp
<%@page pageEncoding="UTF-8"%> <% if(session.isNew()) { response.sendRedirect(request.getContextPath() + "/sessionIsNew.html"); return; } %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Login</title> <link rel="stylesheet" type="text/css" href="../css/sa.css" /> </head> <body> <form method="post" action="<% out.print(request.getContextPath()); %>/j_security_check"> <table> <tr> <td>ユーザ名:</td> <td><input type="text" name="j_username"></td> </tr> <tr> <td>パスワード:</td> <td><input type="password" name="j_password"></td> </tr> </table> <input type="submit" name="login" value="ログイン"/> <form> </body> </html>
ポイントは
<% if(session.isNew()) { response.sendRedirect(request.getContextPath() + "/sessionIsNew.html"); return; } %>
session.isNew()でセッション生成のタイミングを確認し、セッション開始時であればリダイレクトする。
これ意外とweb上に情報がないのでメモ。スターかブクマ付くかなぁ?