Announcement

Collapse
No announcement yet.

Tomcat mit eigener Session-Implementierung

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Tomcat mit eigener Session-Implementierung

    Hallo,

    ich bin neu hier

    Generell bin ich auch noch "neu" im Thema Servlets etc. und hoffe, dass ich mein Problem hier richtig darstellen kann und dass das auch hier in diesen Teil des Forums gehört.

    Es ist so, dass wir für bestimmte Webapplikationen, die wir entwickeln, gern den Tomcat als ServletEngine/Webserver nutzen möchten. Das Problem ist aber das SessionHandling des Tomcats. Die Webanwendung, die wir benutzen, läuft im IE. Man meldet sich über Benutzernamen, Passwort und Domäne an (was quasi die Windows-Authentifizierung ist). In der Anwendung kann man bestimmte Items auswählen (z.B. Angebote), um diese weiter zu konfigurieren. Jedes Angebot wird in einem neuen Browserfenster geöffnet. Nutzen wir Tomcat als Server, dann werden alle Angebote, die ein Benutzer anklickt, unter derselben Session gespeichert, d.h. die SessionID bleibt immer dieselbe. Das ist aber für unseren Kontext schlecht. Es müsste so sein, dass für jedes Angebot eine neue Session erzeugt wird. Die Frage ist nun, wie man das realisieren könnte? Was wären mögliche Ansätze, um für den Tomcat ein eigenes SessionHandling zu implementieren. Geht das überhaupt? Wenn ja, wie? Kann man das auch irgendwie über Filter lösen? Indem man beispielsweise für Requests die Session verändert? Wenn ja, wie genau geht das? Hat jemand damit Erfahrungen gemacht oder weiß jemand, wo man sonst noch fragen könnte?

    Viele Fragen

    Vielen Dank,
    jacquipre.

  • #2
    Hallo jacquipre,

    tomcat ist immer eine gute Wahl!

    Warum immer eine neue Session gezogen werden soll ist mir nicht verständlich und eine gesonderte Logik sollte eher in der Applikation zu implementieren sein.

    Eine mögliche Lösung des Problems. Ich Context bit es die Option Cookie. Wird diese auf false gestellt, dann wird die Session in der URL gekennzeichnet wenn urlEncode bei jedem Link, form,... verwendet wird. Soll eine neue Session gezigen werden, dann verwend einfach kein URLEncode!

    Ja, man sollte die SessionImplementierung schon ändern können. Hab's zwar noch nie gemacht, aber bei einer Ähnlich gelagerten Problematik habe ich solche Missetaten schon durchgeführt.

    Source vom Tomcat besorgen. --> StandardSession anschauen --> verstehen --> Neue Klasse mit interfaces von HttpSession --> Eigener Code --> class in CATALINA_HOME (oder BASE?)/server/class --> und irgendwie kann man dann in der server.xml oder web.xml einstellen, daß diese neue Klasse gezogen wird.
    Hier müßte ich aber auch in den Foren nachschauen, aber ich bin mir sicher, daß ich es schon gelesen habe.

    lg Dietmar

    Comment

    Working...
    X