Próbuję użyć uwierzytelniania LDAP Spring Security 3.0.2 dla witryny JSF. Gdy używam poniższej konfiguracji w aplikacjiContext-security.xml, otrzymuję ten wyjątek - org.springframework.beans.factory.BeanCreationException: Błąd podczas tworzenia komponentu bean o nazwie 'org.springframework.security.web.authentication.rememberme.TokenBasedRememberMeServices # 0' : Inicjalizacja komponentu bean nie powiodła się; Zagnieżdżony wyjątek to org.springframework.context.ApplicationContextException: Nie zarejestrowano UserDetailsService.Wiosenny wyjątek LDAP - Brak zarejestrowanej usługi UserDetails
<authentication-manager>
<ldap-authentication-provider
user-search-filter="(uid={0})" user-search-base="ou=users,ou=system"
group-search-base="ou=groups,ou=system">
</ldap-authentication-provider>
</authentication-manager>
<ldap-server id="ldapServer" url="ldap://localhost:10389"
root="" />
Właśnie eksperymentowałem i stwierdzili, że dodanie poniżej sprawia, że wszystko działa.
<ldap-user-service server-ref="ldapServer" user-search-filter="(uid={0})" />
Ale nie mogłem znaleźć odniesienia do tego w Spring LDAP documentation. Dlaczego otrzymuję powyższy wyjątek, jeśli nie dodaję tego? Nie jestem zadowolony z tego rozwiązania, ponieważ muszę napisać atrybut filtrowania użytkownika w dwóch miejscach.
PS: Sprawdziłem Spring Security LDAP - No UserDetailsService registered. Tam wyjątek jest inny i domyślam się, że wersja Spring Security też jest inna.