セッションを使用しようとすると、このコードを使用するとこの問題が発生しました:
<%@ page
language="java"
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
import="java.util.Date"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta
http-equiv="Content-Type"
content="text/html; charset=UTF-8"
>
<title>Session problem</title>
</head>
<body>
<%
out.println("Are we using cookies? " + request.isRequestedSessionIdFromCookie() + "<BR>");
out.println("Are we using URL? " + request.isRequestedSessionIdFromURL() + "<BR>");
out.println("This is my session Id " + session.getId().toString() + "<BR>");
out.println("It was created on: " + new Date(session.getCreationTime()) + "<BR>");
out.println("The servlet context is: " + session.getServletContext().toString() + "<BR>");
out.println("Is this session new? " + session.isNew() + "<BR><BR>");
%>
</body>
</html>
しかし、リロードを押すたびに新しいセッション ID が表示され、新しいプロパティは常に true です。同様の問題を探したところ、最も一般的な問題は Cookie が有効になっていないことだったので、Cookie が有効になっていることを確認しました。
面白いことに、.war ファイルをアップロードしたところ、テスト サーバーで問題なく動作しました。そのため、Tomcat サーバー (7.0.22) を Eclipse とハード ドライブから削除し、新しいサーバー (7.0.34) を取得しましたが、どちらも機能しませんでした。セッション情報はまだ保存されていません。
Eclipse の構成に何か問題があると思われるので、次のステップは新しい Eclipse をダウンロードすることです。私はまだ Eclipse Java EE Helios を使用しており、これに慣れている場合でも新しいバージョンを使用する可能性がありますが、回避することはできます。これが再び起こらないようにします。
前もって感謝します