2014-11-13 2 views
0

Я пытаюсь использовать @Autowired в ElementProcessor. (http://www.thymeleaf.org/doc/extendingthymeleaf.html#some-reasons-to-extend-thymeleaf)Spring + Thymeleaf + ElementProcessor + @autowired не работает

@Configurable(dependencyCheck = true) 
public class AuditLogElementProcessor extends AbstractMarkupSubstitutionElementProcessor { 
    @Autowired(required = true) 
    DocumentService docService; 

Но как-то объект docService всегда нуль. Сам код определенно работает. Я уже пробовал это с LTW, и он работал с одним и тем же кодом (но мне не разрешено использовать LTW).

Есть ли у вас какие-либо идеи о том, как я могу ввести свое обслуживание в свой ElementProcessor?

Спасибо!

ответ

1

ОТВЕТ:

Обнаружил сам. Проблема заключалась в том, что ElementProcessor не смог получить доступ к Сервисам, потому что Процессоры создаются только тогда, когда это необходимо.

Autowire все необходимые вам услуги в диалекте (который создает Процессоры) и передают все Сервисы как параметры для Процессоров.

Это работает таким образом

Смежные вопросы