Alfresco Process Services с проблемой TaskListener @Autowired - PullRequest
0 голосов
/ 06 июня 2019

Я использую Alfresco Process Services и создал созданный весенний загрузочный проект для пользовательской логики, такой как TaskListeners и Delegations . Я создаю файл jar из этого проекта maven и копирую его в папку webapps / activiti-app / WEB-INF / lib .

У меня есть простой TaskListener , как показано ниже, который вызывается при запуске задачи. Но переменные @ Autowired всегда null .

package com.activiti.extension.bean;

@Component("myTaskListener")
public class MyTaskListener implements TaskListener {

@Autowired
UserService userService;

@Override
public void notify(DelegateTask task) { 
   logger.info("userService: " +userService); // Always prints null
}

Ответы [ 2 ]

1 голос
/ 10 июня 2019

Наконец-то я смог заставить его работать.Я помещал слушателя задачи в поле класса свойств задачи с полным именем пакета.Теперь я помещаю выражение Delegate как $ {myTaskListener}, и оно работает ...

Спасибо всем за ваше время и помощь

1 голос
/ 07 июня 2019

Это потому, что ваш MyTaskListener помечен как @ Component или, по крайней мере, игнорируется пружиной во время инициализации.для возможностей автоматического подключения Spring требует эту аннотацию (или похожую на нее) в предоставленных пакетах @ComponentScan, чтобы рассматривать класс как bean-компонент, в противном случае он будет восприниматься как обычный класс Java, и, следовательно, @autowired в вашем случае бесполезен.

...