新しいセッションは、サーブレットが実際に明示的に作成しない限り、デフォルトではサーブレットコンテナによって作成されません。ヘッダーにJSEESIONIDが入力されているからといって、サーバーにシーションが存在する必要があるという意味ではありません。これの例外はJSPであり、<%@ page session = "false"%>でない限り、デフォルトでセッションが存在しない場合にセッションを作成します。
Cookieがオンになっていない限り:
Webコンテナは、いくつかの方法を使用してセッションをユーザーに関連付けることができます。これらの方法はすべて、クライアントとサーバーの間で識別子を渡すことを含みます。識別子はCookieとしてクライアント上で維持できます。または、Webコンポーネントは、クライアントに返されるすべてのURLに識別子を含めることができます。
アプリケーションでセッションオブジェクトを使用する場合は、クライアントがCookieをオフにするたびに、アプリケーションにURLを書き換えさせることにより、セッション追跡が有効になっていることを確認する必要があります。これを行うには、サーブレットによって返されるすべてのURLに対して応答のencodeURL(URL)メソッドを呼び出します。このメソッドは、Cookieが無効になっている場合にのみ、URLにセッションIDを含めます。それ以外の場合は、URLを変更せずに返します。