blockingtaskdbtest.java
来自「jbpm demo 是一款非常不错的开源工作流,简单易用,适合扩张开发!」· Java 代码 · 共 49 行
JAVA
49 行
package org.jbpm.taskmgmt.exe;
import org.jbpm.db.AbstractDbTestCase;
import org.jbpm.graph.def.ProcessDefinition;
import org.jbpm.graph.exe.ProcessInstance;
public class BlockingTaskDbTest extends AbstractDbTestCase {
public void testBlockingTask() {
ProcessDefinition processDefinition = ProcessDefinition.parseXmlString(
"<process-definition name='blockingprocess'>" +
" <start-state>" +
" <transition to='approval' />" +
" </start-state>" +
" <task-node name='approval'>" +
" <task name='approve' blocking='true' />" +
" <transition name='approve' to='order'/>" +
" <transition name='reject' to='cancelled'/>" +
" </task-node>" +
" <state name='order' />" +
" <state name='cancelled' />" +
"</process-definition>"
);
jbpmContext.deployProcessDefinition(processDefinition);
newTransaction();
ProcessInstance processInstance = jbpmContext.newProcessInstanceForUpdate("blockingprocess");
processInstance.signal();
processInstance = saveAndReload(processInstance);
assertEquals("approval", processInstance.getRootToken().getNode().getName());
TaskInstance taskInstance = (TaskInstance) processInstance
.getTaskMgmtInstance()
.getTaskInstances()
.iterator()
.next();
assertTrue(taskInstance.isBlocking());
try {
processInstance.signal();
fail("expected RuntimeException");
} catch (RuntimeException e) {
// OK
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?