私は、私が置く必要があるセッション属性を設定するために、読んだ:
<sessions-enabled>true</sessions-enabled>
appengine-web.xml内に実装しjava.io.Serializable.
(理由はわかりませんが!)
以下は、 HttpSessionを使用するサーブレットの 1 つです。
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String userName = request.getParameter("username");
String password = request.getParameter("password");
ArrayList list = new ArrayList();
if(userName.compareTo("user") != 0 ) {
list.add("Wrong Username");
} else if(password.compareTo("password") != 0) {
list.add("Wrong Password");
}
if(list.isEmpty()) {
HttpSession session = request.getSession();
if(session.isNew()) {
session.setAttribute("UserRole", "PW :Admin");
session.setMaxInactiveInterval(900);
RequestDispatcher rd = request.getRequestDispatcher("abc/cpanel/PcPanel.jsp");
request.setAttribute("SessionStatus", "JC"); // Just Created
rd.forward(request, response);
}
} else {
response.sendRedirect("abc/cpanel/PcPanel_Login.jsp");
}
}
ユーザー名とパスワードを検証してif
ブロックに入ると、要求はPcPanel Login.jspに転送されるはずですが、転送されません。代わりに、このサーブレットのアドレスが記載された空白のページが表示されます。しかし、すべてのセッションジャンクを削除/コメントすると、正常に動作します。なぜそれが起こるのですか?私は何かを見逃していますか、それともどこかで間違いを犯していますか?