Die jsessionid
wird nur angehängt, wenn die Cookies deaktiviert sind und, wenn eine Sitzung wurde auf der Server-Seite erstellt (und damit die Server-Seite muss die Kunden über diese irgendwie informieren, für die ein Cookie würde ist die Standardeinstellung Ansatz). Wenn keine Sitzung erstellt wurde, ist es nicht sinnvoll, die jsessionid
anzuhängen.
Versuchen Sie, die folgende Zeile an den Anfang Ihrer JSP hinzuzufügen, zumindest bevor die <c:url>
Zeile aufgerufen wird. Es druckt/debuggt nicht nur die Sitzungs-ID für Sie, sondern erstellt auch implizit die Sitzung, falls noch nicht geschehen.
${pageContext.session.id}
Dies nur zu Testzwecken tun. Wenn es funktioniert, dann liegt die Ursache für Ihr Problem darin, dass es einfach keine Mittel für eine Sitzung gab. Behalte es so wie es ist. Sie müssen die Sitzung nicht unnötig erstellen. Für den Fall, wenn es als Sitzung und der Browser keine Cookies unterstützt, funktioniert die c:url
gut.
By the way, zu überprüfen, ob die Cookies tatsächlich deaktiviert werden, indem Firebug die Request-Header verfolgen. Wenn in der Anforderung kein Header Cookie
vorhanden ist, obwohl der Server in der Antwort einen Header Set-Cookie
festgelegt hat, bedeutet dies, dass die Cookies tatsächlich auf der Clientseite deaktiviert sind.
Sind Sie sicher, dass Cookies * sind * Behinderte ? Wie hast du das gemacht? – skaffman
Die Seite wurde meiner Ausschlussliste für Cookies in Firefox hinzugefügt. Und die JSessionID wird bei der Anmeldung an meine URL angehängt. (Einige generierte Links außerhalb meiner Kontrolle). Und ich kann die Session-ID mit getRequestedSessionId abrufen – Jack