Announcement

Collapse
No announcement yet.

Eine Singleton-Instanz bei mehreren Zugriffen

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

  • Eine Singleton-Instanz bei mehreren Zugriffen

    Hallo,

    ich habe derzeit folgendes Problem.
    Ich greife mit 2 unterschiedlichen Browsern von 2 unterschiedlichen Plattformen aus auf die gleiche Webapplikation zu, was bei identischen Klickweg zu unerwünschten Effekten führt.
    Ursache ist meiner Meinung nach die Tatsache, dass in meinem Servlet eine Singleton-Instanz erzeugt wird, auf die nun beide Anfragen zugreifen.
    Es sollte aber so sein, dass für jede Anfrage eine eigene Instanz des Singleton bereitsteht.
    Als Applikations/Webserver nutze ich Resin3.0.24.
    Ich gehe davon aus, dass hier der Singleton für die komplette Webapp und nicht für jede Session einzeln erzeugt wird.
    Hat jemand evtl eine Idee was hier gemacht werden kann, damit die Implementierung des Singleton beibehalten werden kann, aber eben für jeden Zugriff eine eigene Instanz erzeugt werden kann?

    Danke und viele Grüsse,
    Alex

  • #2
    Hallo Alex,

    Beibehalten kannst Du die Implementierung als klassisches Singleton nicht. Man müsste das Objekt schon in der session speichern. Da es dort unter einem key abgelegt wird, kann man doch leicht sicherstellen das nur einmal eine Instanz pro session erzeugt wird. Oder kann ich das so verstehen das Du den Code der Anwendung nicht ändern kannst? Dann gibt es ein Problem zu dem mir keine vernünftige Lösung einfällt außer das der Autor der Anwendung den Fehler beheben muß

    Viele Grüße,

    Alwin

    Comment


    • #3
      Hallo Alwin,

      danke für die Antwort. Ich habe den Singleton verworfen, erzeuge mir nun eine Instanz und halte die in meinem ServletContext vor, tut.

      Gruss,
      Alex

      Comment

      Working...
      X