Я использую плагины Spring Security (core 2.0-SNAPSHOT и ldap 2.0-RC2) в моем проекте Grails 2.4.RC1. Я хотел бы иметь возможность повторно использовать LdapTemplate
, который был настроен для использования в весенней безопасности, но я не уверен, как ввести LdapTemplate
в мой класс обслуживания.
Вот моя простая услуга:
@Transactional
class EmployeeSynchronizationService implements EmployeeSynchronizer {
LdapTemplate ldapTemplate
void syncEmployees() {
// do work with ldapTemplate... but ldapTemplate is null
println ldapTemplate
sync(getUsernameToEmployeeMap(), getEmployeeLdapInfo())
}
...
И на основе этого сообщения stackoverflow мой файл resources.groovy выглядит так:
beans = {
employeeSynchronizer(employee.EmployeeSynchronizationService) {
ldapTemplate=ref(ldapTemplate)
}
}
Однако, когда я вставляю EmployeeSynchronizer
в контроллер и вызываю его метод syncEmployees
, я вижу, что LdapTemplate имеет значение null.
Примечание: этот же вопрос был задан (но без ответа) здесь.