Ich versuche, ein einfaches Servlet zu implementieren, das eine HTTP-Sitzung in verwendet ein eingebetteter Steg (7.3.0 v20110203) Container. Zum Starten der Anlegestelle benutze ich den folgenden Code:
%Vor%Das Servlet erwirbt eine Sitzung mit
%Vor%und speichert einige Daten darin. Bei der nächsten Anfrage erhält es die Sitzung mit dem folgenden Code:
%Vor%und dort ist die Sitzung immer null.
Ich habe keine Informationen gefunden das Internet über dieses spezielle Problem. Ich habe auch experimentiert mit dem Setzen eines SessionManager oder SessionIdManager, aber das schien nicht alles ändern. Ich vermute, dass ich etwas über SessionManager oder SessionIdManager oder SessionHandler hier verpasse, aber das ist nur eine wilde Vermutung.
Ihr Code funktioniert gut mit dieser Skelettimplementierung von BaseServlet:
%Vor%Die Sitzung wird wahrscheinlich an anderer Stelle in Ihrem Code ungültig gemacht.
Die SessionHandler
kann auch explizit mit der Methode setSessionHandler()
von ServletContextHandler
festgelegt werden.
Die Methode HttpServletResponse#reset()
zerstört eine neu erstellte Sitzung, so dass beim nächsten Mal eine neue erstellt wird usw.
Tags und Links jetty servlets embedded-jetty httpsession