【问题标题】:How to get the spring bean object in Activiti JavaDelegate class如何在Activiti JavaDelegate类中获取spring bean对象
【发布时间】:2022-11-10 14:50:41
【问题描述】:

我想将一个 Spring bean 对象访问到实现 Activiti BPM 的 JavaDelegate 接口的类中。

当我尝试访问它时,发现它为“null”。

代码是:

@Service("tempService")
public class TempServiceImpl {

    public void getData(String userName) {
        System.out.println("Data get for the user is => "+userName);
    }
}

JavaDelegate 类是:

@Component
public class DataService implements JavaDelegate {

    @Autowired
    private TempServiceImpl tempService;
    
    @Override
    public void execute(DelegateExecution execution) {
        VariableInstance instance = execution.getParent().getVariableInstances().get("info");
        User user = (User) instance.getValue();
        System.out.println("Name: "+user.getUserName());
        tempService.getData(user.getUserName());
        System.out.println("Working fine....");
    }

}

当我运行应用程序时,发现 DataService 类中的对象“tempService”为“null”。

任何指针,如何解决?

谢谢,

阿图尔

【问题讨论】:

    标签: java spring spring-boot activiti


    【解决方案1】:

    我解决了这个问题,解决方法是通过将“DataService”类的任务类型更改为“委托表达式”而不是“Java 类”来更改 BPM 中的设置。

    可能还有其他方法,但这就是我解决问题的方法。

    谢谢,

    阿图尔

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-26
      • 1970-01-01
      • 2014-02-21
      • 1970-01-01
      • 1970-01-01
      • 2013-11-27
      相关资源
      最近更新 更多