簡體   English   中英

如何在Activiti JavaDelegate任務中訪問Spring Beans

[英]How to access Spring Beans in Activiti JavaDelegate tasks

我正在使用activiti 5.16.1在我的項目中啟用工作流程。

我有一個spring bean,它執行業務任務,例如從數據庫中為給定的id填充數據。

當我嘗試在JavaDelegate任務中使用這些bean時,不會填充這些bean。

@Component
public class ServiceClassDelegateSample implements JavaDelegate {

    @Autowired
    private SampleService sampleService;

    @Override
    public void execute(DelegateExecution delegateExecution) throws Exception {

        sampleService.doSomeTask();
    }

}

但是,sampleService始終設置為null。

您是否了解如何在JavaDelegate任務中使用spring bean?

有類似的問題在這里沒有任何妥善的解決辦法,我希望有Activiti中的較新版本的更好的方法。

如果我沒記錯的話,它在Activiti中會出現一些故障,但是如果你更換它就可以很容易地解決它

<serviceTask id="servicetask" name="Service Task" activiti:class="some.class.path.ServiceClassDelegateSample"></serviceTask>

用委托表達;

<serviceTask id="serviceTask" activiti:delegateExpression="${serviceClassDelegateSample}"></serviceTask>

其中serviceClassDelegateSample是bean的名稱。

但是為什么不能以第一種方式工作,我不知道。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM