--- original message ---
From: Thomas Haaks <tommy...@gmail.com>
Subject: [sugg] Spring und custom scopes
Date: 7th July 2008
Time: 8:52:49 am
Hallo zusammen,
wir bauen gerade ein auf JSF, Spring und Hibernate basierendes
Kundenportal um in eine reine Webservices-Diensteschicht.
Dies ist mit Glassfish, EJB3 Stateless SessionBeans und Webservice-
Annotations auch nicht unm?glich.
Den "technologischen Durchstich" haben wir und unsere SessionBeans
bekommen prima Springbeans injected.
Da sich das Kundenportal aber eines langsamen Legacy-Systems bedient,
haben wir gelesene Kundendaten in session scoped beans gepuffert. Dies
ist in einer HTTP-Session-basierten Umgebung ja auch kein Problem. Und
nat?rlich sind diese session scoped beans auch in einigen Singleton-
Beans (Daos und Services) injected (dank <aop:scoped-proxy/>).
In der neuen Frontend-losen Webservices-Diensteschicht sieht das
leider ganz anders aus. An den Daos und Services wollen wir m?glichst
wenig umbauen. Daher m?ssen wir im Prinzip ?ber Login- und Logoff-
Webservices mit selbstgenerierten Session-IDs so etwas wie eine
Session simulieren, um darin die Kundendaten weiterhin zu puffern. Nur
wie erzeugen wir jetzt die zuge?rigen "session" scoped beans und
lassen diese wieder injecten?
Meine Idee war, einen custom scope zu bauen (Implementieren des
Interfaces org.springframework.beans.factory.config.Scope). Nur wie
sorge ich daf?r, dass beim Aufruf des Login-Webservices eine neue
custom scope-Instanz aufgemacht wird, in der die custom scope-Beans
dann gehalten werden? Und beim Aufruf des Logoff-Webservices m?ssen
nat?rlich alle custom scope beans der aktuellen custom scope Instanz
freigegeben werden.
Muss ich noch irgendwo einen Listener implementieren und den ?ber die
Webservices triggern? Oder kann ich in den Webservices selbst eine
neue custom scope-Instanz erzeugen?
Hat sich schon jemand mit den custom scopes in einem ?hnlichen
Problemfeld besch?ftigt und kann ein paar Tips geben?
Danke und Gru?,
Tommy Haaks