enhancement
major
minor
defect
critical
major
minor
major
#30127
Eine Anwendung im Server-Stammverzeichnis behält ihre Sitzung bei: Das Sitzungs-Cookie wird an alle ihre Pfade gesendet, und die React-Seite zeigt ihr Symbol an.
Eine Anwendung, die im Root-Kontext ihres Servers bereitgestellt wird (leerer Kontextpfad, z. B. in einem Container), kann nicht über die React-Benutzeroberfläche genutzt werden: Die Anmeldung unter /view/ gelingt zwar, aber jede Anfrage an /react-api liefert den Status 401. Abgespalten von #30083 (03.11.2026).
Problem
Beobachtet: Nach einer Anmeldung unter http://host/view/ sendet der Browser die JSESSIONID nur an /view, sodass /react-api den Status 401 zurückgibt. Die Seite fordert außerdem /favicon.ico an, was der Root-Kontext als 404 protokolliert.
Erwartet: Das Sitzungs-Cookie sollte jeden Pfad der Anwendung erreichen, und die Seite sollte ihr eigenes Icon angeben, sodass der Browser nicht beim Server-Root nach einem Icon fragt.
Wiederherstellung:
- Stellen Sie eine Anwendung mit dem Kontextpfad /` bereit (z. B. auf dem Laufzeit-Image von #30130 oder als Tomcat `ROOT).
- Öffnen Sie /view/ und melden Sie sich an.
- Das Cookie wird mit „Path=“ (leer) geschrieben; der Browser beschränkt seinen Geltungsbereich auf /view.
Ursache
SessionService.setSecureSessionCookie schreibt „Path=“ plus den Kontextpfad. Im Root-Kontext ist dieser Pfad leer, und ein Cookie ohne Pfad wird vom Browser auf das Verzeichnis der Anfrage beschränkt. Die Methode wird sowohl beim Erstellen einer Sitzung als auch bei einer Änderung ihrer ID verwendet. Die Seite der React-Benutzeroberfläche (ViewServlet) schreibt keinen Icon-Link, daher fragt der Browser nach /favicon.ico.
Vorschlag
- Ein leerer Kontextpfad schreibt „Path=/“.*beschlossen*
- Die Seite der React-Benutzeroberfläche schreibt das Anwendungssymbol (FaviconTag) wie die klassische Benutzeroberfläche. *beschlossen*
Erledigt, wenn
- TestSessionService.testSessionCookieAtServerRoot erfolgreich ist; auf dem Master wird das Cookie mit einem leeren Pfad geschrieben.
- Eine Anwendung im Server-Stammverzeichnis meldet sich unter /view/ an, ohne dass ein 401-Fehler von /react-api zurückgegeben wird.