クライアントのブラウザで Cookie が無効になっていることをサーブレットがどのように判断できるかを誰かが説明してくれるとありがたいです。
サーブレットでセッションを作成しているときに、Cookie が有効になっている場合、サーバーは sessionID を Cookie として返します。Cookie が無効になっている場合、セッション ID が URL に書き込まれます。
私が理解できないのは、Cookie が無効になっていることをサーバーがどのように判断できるかということです。HTTP はステートレス プロトコルです。クライアントが Cookie を無効にしたことをサーバーが知る方法はありません (私が知っていることです)。サーバーはリクエスト ヘッダーで Cookie を受信しないと思いますが、そもそも Cookie が設定されていない可能性があります。
これらの回答を確認しました: Servlet HttpSession cookies disabled ブラウザが Cookie を無効にしているときにセッションを管理する
どちらも URL 書き換えを有効にする方法を説明していますが、クライアントで Cookie が無効になっていることをサーバーが認識する方法については説明していません。