Я занимаюсь разработкой приложений, состоящих из Spring, Wicket, Hibernate и Spring Security.Все работает хорошо, но теперь я добавил собственную реализацию UserDetailsService для извлечения пользователей из базы данных.Я настроил его в файле applicationContext-security.xml и добавил зависимость для моего UserDAO с помощью Spring.Однако, я получил исключение нулевого указателя из-за того, что мой userDAO был нулевым.Почему эта зависимость не работает?Я делаю это точно так же, например, в подклассах WebPages, и все работает хорошо.
@Service
public class ComicsUserDetailsService implements
org.springframework.security.core.userdetails.UserDetailsService {
@SpringBean
private UserDAO userDAO;
public ComicsUserDetailsService() {
System.out.println("$$$ UserDetailsService created");
}
@Override
public UserDetails loadUserByUsername(String username)
throws UsernameNotFoundException, DataAccessException {
(bla bla)
}
}
UserDAO - довольно простой класс
@Service
public class UserDAO {
public UserDAO() {
System.out.println("$$$ UserDAO created");
}
@PersistenceContext
private EntityManager em;
(fetch and other bla bla methods)
}