DI @SesionScoped Guice

freez

Top Contributor
Hallo,

angestoßen durch einen anderen Thread hier im Forum habe ich mich mit DI und nun auch mit Guice beschäftigt.

Machen die Annotationen @SessionScoped und @RequestScoped bei normalen Swing Anwendungen Sinn?
Zur Erläuterung:
Ich erhalte eine Fehlermeldung "No scope is bound to com.google.inject.servlet.RequestScoped" und habe mir anschließend die Frage gestellt, wofür ich in dem Fall diese Scopes benötigen würde. Mir fallen keine Anwendungsfälle ein, da in der normalen Swinganwendung eh alles soweit "eine Session" ist. Da reicht eigentlich "@Singleton".
 

freez

Top Contributor
Dachte ich mir fast. Danke.

Wie geht das eigentlich, wenn ich ein Objekt mit "@Singleton" markiere, aber an verschiedenen Stellen unterschiedliche Instanzen benötige?
 
M

maki

Gast
Wie geht das eigentlich, wenn ich ein Objekt mit "@Singleton" markiere, aber an verschiedenen Stellen unterschiedliche Instanzen benötige?
Dann ist es kein Singelton und sollte nicht mit @Singleton annotiert werden.

Mann kann aber zus. Qualifier mitgeben (eigene Annotationen) und damit im Binding steuern, wann welche Instanz zu verwenden ist.
 

FArt

Top Contributor
Ja, m.E. macht das u.U. durchaus Sinn. Man muss sich nur klar sein, was das bedeutet.
@SessionScoped ist halt für Webanwendungen definiert. Mit Weld habe ich als POC mal einen eigenen sessionbezogenen Scope umgesetzt. Man muss aber für diese Session einen sinnvollen Lebenszyklus definieren und die Session natürlich auch entpsrechend implementieren.

Das ist nicht wirklich schwer, aber auch nicht trivial. Die Arbeit steck vorwiegend in der Session an sich und deren Lebenszyklus.
 

Ähnliche Java Themen

Neue Themen


Oben