我正在使用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?
有类似问题here没有任何适当的解决方案,我希望在更新版本的Activiti有更好的方法.
解决方法:
如果我没记错的话,它在Activiti中会出现一些故障,但是如果你更换它就可以很容易地解决它
<serviceTask id="servicetask" name="Service Task" activiti:class="some.class.path.ServiceClassDelegateSample"></serviceTask>
用委托表达;
<serviceTask id="serviceTask" activiti:delegateExpression="${serviceClassDelegateSample}"></serviceTask>
其中serviceClassDelegateSample是bean的名称.
但是为什么不能以第一种方式工作,我不知道.
标签:activiti,java,spring,bpm 来源: https://codeday.me/bug/20190728/1561237.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。