[Spring+JSF]: VariableResolver und Scopes?

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallöle

Bei der Zusammenarbeit zwischen JSF und Spring muss man ja einen Variable-Resolver in der faces-config.xml anmelden.

Frage hierzu:

Ein Benutzer bearbeitet ein Formular. Diesem Formular liegt ein Managed-Bean mit dem Scope "Request" zu Grunde (das könnte z.B. der Controller sein). Sprich: Für jeden Benutzer, der das Formular abschickt, existiert eine Instanz dieses Managed-Beans. Und diesem Managed-Bean ist in der faces-config.xml ein Spring-Bean zugeordnet.

Code:
<managed-bean>
   <managed-bean-name>IrgendwasController</managed-bean-name>
   <managed-bean-class>de.lalala.irgendwas.IrgendwasController</managed-bean-class>
   <managed-bean-scope>request</managed-bean-name>
   <managed-property>
       <property-name>IrgendwasDaten</propertyName>
       <value>#{IrgendwasDaten}</value>
   </managed-property>
</managed-bean>

#{IrgendwasDaten} sei hierbei das Bean, das von Spring kommt, und das mit den Feldern des Formulars befüllt werden solle. Nun ist es ja so, dass Spring alle Beans als Singleton anlegt, d.h. es gibt systemweit nur eine Instanz (wenn ich mich nicht irre, und darum geht's *g*).

Wenn nun mehrere Benutzer gleichzeitig ein Formular abschicken, wird dann ein und das selbe Bean mit den Daten befüllt? Das würde bedeuten, dass der letzte Abschicker gewinnt, und seine Daten mehrfach in die Datenbank geschrieben werden (es gibt ja mehrere Controller - für jeden Benutzer einen - und der schreibe das Bean z.B. via Hibernate in die DB).

Oder ist Spring so schlau, und erkennt hier, dass man für jeden Request eine eigene Instanz von IrgendwasDaten anlegen muss, so dass jeder IrgendwasController eine solche erhält?
 

unkreativ

Mitglied
Hallo,

naja, du musst Spring schon sagen, was du willst. ;-) Bevor ich das jetzt aber langwierig selbst versuche, das zu erklären, würde ich dir einfach empfehlen, dich etwas in das Thema "Scopes in Spring 2.0" einzulesen, z.B. bei der Quelle ansich: http://static.springframework.org/spring/docs/2.0.x/reference/beans.html#beans-factory-scopes

grüße,
unkreativ

edit #1: Oha, sehe erst jetzt, wie alt der Thread eigentlich schon ist. Sorry, falls das jemand als Leichenschändung interpretieren sollte. :lol:
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben