Manuelles Holen der Instanz von AuthenticationManager

7

Ich versuche, das Folgende zu implementieren, aber meine AuthenticationManager-Instanz löst die folgende Ausnahme aus und wird nicht autowired. Wie erhalte ich manuell eine Instanz von Spring? Ich benutze keinen Spring Controller, ich benutze eine JSF Request Scoped Bean. Ich bekomme die folgende Ausnahme zur Laufzeit, wenn der Container versucht, den AuthenticationManager automatisch zu starten. Der RequestCache kommt in Ordnung. Ich verstehe nicht, warum ich zwei Instanzen habe ...

config:

%Vor%
  

Injektion autowired Abhängigkeiten fehlgeschlagen; verschachtelte Ausnahme ist org.springframework.beans.factory.BeanCreationException: Feld konnte nicht authired werden: protected org.springframework.security.authentication.AuthenticationManager com.dc.web.actions.SignUpDetail.authenticationManager; Die verschachtelte Ausnahme ist org.springframework.beans.factory.NoSuchBeanDefinitionException: Es wurde keine eindeutige Bean vom Typ [org.springframework.security.authentication.AuthenticationManager] definiert: erwartete einzelne übereinstimmende Bean, aber gefunden 2: [org.springframework.security.authentication.ProviderManager # 0, org.springframework.security.authenticationManager]       javax.faces.webapp.FacesServlet.service (FacesServlet.java:325)

%Vor%     
c12 24.03.2011, 10:07
quelle

1 Antwort

33

Geben Sie zunächst einen eindeutigen Bean-Namen für Ihre AuthenticationManager

ein %Vor%

Zweitens, verwenden Sie Qualifier bei der automatischen Verkabelung:

%Vor%     
Boris Kirzner 28.03.2011, 15:21
quelle

Tags und Links