2012-04-04 10 views
1

Ich brauche @AdditionalCriteria Annotation für meine Entitäten zu verwenden, um Daten zu isolieren, je nach dem angemeldeten Benutzer „userPrinicpal“Frühling Eclipse Dynamische Sitzung Eigenschaft

Ich habe folgendes für jede Entität:

@AdditionalCriteria("this.owner = :owner") 

der Problem ist: Ich kann nicht zuordnen: Besitzer Parameter, um den aktuellen angemeldeten Benutzer, ich habe versucht, Mapping mit SessionCustomizer, aber ich habe herausgefunden, dass SessionCustomizer beim Start der Anwendung und nicht für jede Sitzung ausgeführt.

hat jemand eine Idee, wie man das erreicht?

Mit freundlichen Grüßen, Razi

Antwort

0

Haben Sie versucht,

em.setProperty ("Besitzer", derbesitzer)

Sie auch den "Eigentümer" Eigenschaft in Ihrem Persistenzeinheit Eigenschaften passieren könnte, oder setze es auf die emf.

+0

Ich weiß, ich kann dies erstellen, aber das bedeutet, dass ich diese Eigenschaft in jeder DAO "@ Repository" -Klasse festlegen muss, und noch mehr muss ich es in jeder Methode der DAO-Klassen festlegen, da diese Klassen initialisiert werden Anwendungsstart, habe ich recht? –

+1

Danke @James. Ich habe am Ende eine SessionEventListener-Klasse erstellt und eklipselink.session-event-listener -Eigenschaft zu EMF Bean Config hinzugefügt. es funktioniert gut. aber es wurde immer noch vor jeder sql-Anweisung ausgeführt, weil ich die postAcquireConnection-Funktion verwendet habe. Gibt es eine Möglichkeit, Spring oder Eclipselink zu sagen, die Verbindung nach jeder SQL-Anweisung nicht freizugeben? –

Verwandte Themen