Alfresco bpmn自定义executionListener

时间:2016-11-08 06:36:02

标签: workflow alfresco activiti

我想创建自定义执行侦听器以在开始表单上将值设置为textfield。此外,我需要发送电子邮件到人员列表。但是当我向工作流添加执行元素时,我会捕获异常:

<b>org.springframework.extensions.webscripts.WebScriptException - 10080001 Script url /api/workflow/activiti$LegalDocFlow/formprocessor does not support the method GET</b>

我只向bpmn添加了扩展元素:

<process id="LegalDocFlow" isClosed="false" isExecutable="true" name="LegalProcessSchema" processType="None">
        <extensionElements>
            <activiti:executionListener event="start" activiti:delegateExpression="${StartListener}"/>
            <activiti:executionListener event="end" activiti:delegateExpression="${EndListener}"/>
        </extensionElements>
....

我的听众看起来像这样:

import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.ExecutionListener;
import org.alfresco.repo.workflow.activiti.script.DelegateExecutionScriptBase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.stereotype.Component;

@Component("StartListener")
public class StartListener implements ExecutionListener {
    private static Log logger = LogFactory.getLog(StartListener.class);

    public void notify(DelegateExecution execution) throws Exception {
        System.out.println("CreateListener");
    }
}

我错了吗?

1 个答案:

答案 0 :(得分:0)

我将侦听器替换为startEvent:

<startEvent id="alfrescoStartevent1" name="Alfresco start" activiti:formKey="dfrwr:startProcesstask" >
        <extensionElements>
            <activiti:executionListener event="start" class="${StartListener}"/>
            <activiti:executionListener event="end" class="${EndListener}"/>
        </extensionElements>
    </startEvent>

它的工作!