<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: how can get process instance's task node  out transition in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43775#M23931</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;Please post a fully working unit test so we reproduce the error.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;/BLOCKQUOTE&gt;&lt;SPAN&gt;thanks for your help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;My junit&amp;nbsp; init code is:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;public class Demo {&lt;BR /&gt; &lt;BR /&gt; /** The ctx. */&lt;BR /&gt; private ClassPathXmlApplicationContext ctx;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; /** The process engine. */&lt;BR /&gt; private ProcessEngine processEngine;&lt;BR /&gt; &lt;BR /&gt; /** The runtime service. */&lt;BR /&gt; private RuntimeService runtimeService;&lt;BR /&gt; &lt;BR /&gt; /** The task service. */&lt;BR /&gt; private TaskService taskService;&lt;BR /&gt; &lt;BR /&gt; /** The repository service. */&lt;BR /&gt; private RepositoryService repositoryService;&lt;BR /&gt; &lt;BR /&gt; /** The history service. */&lt;BR /&gt; private HistoryService historyService;&lt;BR /&gt; &lt;BR /&gt; private ExecutionManager executionManager;&lt;BR /&gt; &lt;BR /&gt; /** The ymd. */&lt;BR /&gt; public SimpleDateFormat ymd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");&lt;BR /&gt; &lt;BR /&gt; /**&lt;BR /&gt;&amp;nbsp; * &amp;lt;pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * Before.&lt;BR /&gt;&amp;nbsp; * &amp;lt;/pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * &lt;BR /&gt;&amp;nbsp; * @author 宿晓斐 2011-9-2&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt; @Before&lt;BR /&gt; public void before() {&lt;BR /&gt;&amp;nbsp; ctx = new ClassPathXmlApplicationContext("applicationContext.xml");&lt;BR /&gt;&amp;nbsp; processEngine = (ProcessEngine) ctx.getBean("processEngine");&lt;BR /&gt;&amp;nbsp; runtimeService = (RuntimeService) ctx.getBean("runtimeService");&lt;BR /&gt;&amp;nbsp; repositoryService =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RepositoryService) ctx.getBean("repositoryService");&lt;BR /&gt;&amp;nbsp; taskService = (TaskService) ctx.getBean("taskService");&lt;BR /&gt;&amp;nbsp; historyService = (HistoryService) ctx.getBean("historyService");&lt;BR /&gt;&amp;nbsp; executionManager = (ExecutionManager) ctx.getBean("executionManager");&lt;BR /&gt; }&lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;and spring config is:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;!– Activiti工作流 配置 start –&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的数据源等参数配置 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration"&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="dataSource" ref="dataSource" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="transactionManager" ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="databaseSchemaUpdate" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="jobExecutorActivate" value="false" /&amp;gt;&lt;BR /&gt; &amp;lt;/bean&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的流程引擎 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean"&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="processEngineConfiguration" ref="processEngineConfiguration" /&amp;gt;&lt;BR /&gt; &amp;lt;/bean&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的资源库服务,用于获取流程定义等内容 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="repositoryService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getRepositoryService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的运行时服务，可以用于完成任务等操作 –&amp;gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;bean id="runtimeService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getRuntimeService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的任务服务,用于跟任务相关的操作，比如指派处理人等 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="taskService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getTaskService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的历史服务,用于查询数据，比如查询已经完成和未完成的任务等 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="historyService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getHistoryService" /&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的管理服务 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="managementService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getManagementService" /&amp;gt;&lt;BR /&gt; &amp;lt;bean id="executionManager" class="org.activiti.engine.impl.persistence.entity.ExecutionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;!– Activiti&amp;nbsp; 配置 end –&amp;gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;that's all.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 06 Sep 2011 07:40:35 GMT</pubDate>
    <dc:creator>ggdeveloper</dc:creator>
    <dc:date>2011-09-06T07:40:35Z</dc:date>
    <item>
      <title>how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43769#M23925</link>
      <description>ls there some API for get the process instance's an task node&amp;nbsp; out transition?following list my step:1. get the task by login user;2. get the process instance id ;3. use runtimeService to get the ProcessInstance by process instance id;4. cast the ProcessInstance to ExecutionEntity;5. call the getAct</description>
      <pubDate>Sat, 18 Jun 2011 06:39:40 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43769#M23925</guid>
      <dc:creator>ant1</dc:creator>
      <dc:date>2011-06-18T06:39:40Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43770#M23926</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;there is the code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp; List&amp;lt;Task&amp;gt; tList = taskService.createTaskQuery().taskAssignee("person1").list();&lt;BR /&gt;&amp;nbsp; if (null != tList &amp;amp;&amp;amp; tList.size() &amp;gt; 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (Task task : tList) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("the task id is :" + task.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println(task.getProcessInstanceId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;ProcessInstance&amp;gt; pdes = runtimeService.createProcessInstanceQuery().processInstanceId(task.getProcessInstanceId()).list();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (null != pdes &amp;amp;&amp;amp; pdes.size() &amp;gt; 0) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (ProcessInstance pi : pdes) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (null != pi) {&lt;BR /&gt;&amp;nbsp; ExecutionEntity ee = (ExecutionEntity) pi;&lt;BR /&gt;&amp;nbsp; if (null != ee) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActivityImpl ai = ee.getActivity();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;PvmTransition&amp;gt; pts = ai.getOutgoingTransitions();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (null != pts)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println(pts.size());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System.out.println("PvmTransition list is null");&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;/CODE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 18 Jun 2011 06:45:37 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43770#M23926</guid>
      <dc:creator>ant1</dc:creator>
      <dc:date>2011-06-18T06:45:37Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43771#M23927</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Where are you calling this code from? &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If your process is halted in a usertask, the execution rerieved from that task should give the activity back.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 20 Jun 2011 07:38:48 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43771#M23927</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2011-06-20T07:38:48Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43772#M23928</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I also had the problem with NullPointerException when calling getActiviti() of a execution entity which I retrieved by a process instance query or a execution query.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;This &lt;/SPAN&gt;&lt;A href="http://forums.activiti.org/en/viewtopic.php?f=6&amp;amp;t=1279" rel="nofollow noopener noreferrer"&gt;thread&lt;/A&gt;&lt;SPAN&gt; shows that a Activity has to be retrieved via a ProcessDefinitionEntity. Here my working unit test.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;@Test&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void getActivityBehaviorViaProcessDefinitionEntity() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // start a process&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String processKey = "singleReceiveTaskProcess";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessInstance processInstance = getActivitiRuntimeService().startProcessInstanceByKey(processKey);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; List&amp;lt;Execution&amp;gt; executions = getActivitiRuntimeService().createExecutionQuery()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .processInstanceId(processInstance.getId())&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .list();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertEquals(1, executions.size());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Execution execution = executions.get(0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ExecutionEntity executionEntity = (ExecutionEntity) execution;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ProcessDefinitionEntity processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) getActivitiRepositoryService() )&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getDeployedProcessDefinition(processInstance.getProcessDefinitionId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ActivityImpl activity = processDefinitionEntity.findActivity(executionEntity.getActivityId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; assertNotNull(activity);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;/CODE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 11 Aug 2011 10:21:10 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43772#M23928</guid>
      <dc:creator>steff1</dc:creator>
      <dc:date>2011-08-11T10:21:10Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43773#M23929</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;hi,i have the similar problem. i use SpringProcessEngineConfiguration and junit to test my code. My activiti version is 5.7.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I just want to get an ActivityImpl from a task that exists.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;/**&lt;BR /&gt;&amp;nbsp; * &amp;lt;pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * Test rollback.&lt;BR /&gt;&amp;nbsp; * &amp;lt;/pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * &lt;BR /&gt;&amp;nbsp; * @author 宿晓斐 2011-9-5&lt;BR /&gt;&amp;nbsp; * @throws Exception&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt; @Test&lt;BR /&gt; public void testRollback() throws Exception {&lt;BR /&gt;&amp;nbsp; Task mobjTask = taskService.createTaskQuery().taskId("102").singleResult();&lt;BR /&gt;&amp;nbsp; if (mobjTask != null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; System.out.println("ready rollback");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ProcessDefinitionImpl processDefinitionImpl =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (ProcessDefinitionImpl) repositoryService&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .createProcessDefinitionQuery()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .processDefinitionId(&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mobjTask.getProcessDefinitionId())&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .singleResult();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; TaskEntity taskEntity = (TaskEntity) mobjTask;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // this node should not be empty.&lt;BR /&gt;&amp;nbsp;&amp;nbsp; List&amp;lt;PvmTransition&amp;gt; pvmTransitionList =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; taskEntity.getExecution().getActivity()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getIncomingTransitions();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if (pvmTransitionList == null || pvmTransitionList.isEmpty()) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new ActivitiException("no IncomingTransitions found");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; TransitionImpl transition =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (TransitionImpl) pvmTransitionList.get(0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; ActivityImpl toActiviti = transition.getSource();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; if (toActiviti == null) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; throw new ActivitiException("no toActiviti found");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp; TransitionImpl transitionImpl =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; toActiviti.createOutgoingTransition();&lt;BR /&gt;&amp;nbsp;&amp;nbsp; transitionImpl.setDestination(toActiviti);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; taskService.complete(mobjTask.getId());&lt;BR /&gt;&amp;nbsp;&amp;nbsp; System.out.println("roll back completed");&lt;BR /&gt;&amp;nbsp; } else {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; System.out.println("task is null");&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; }&lt;BR /&gt; &lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;but throw an Excepiton.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i see the error trace and trace code in activity source :&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;nbsp; public ExecutionEntity getExecution() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ( (execution==null) &amp;amp;&amp;amp; (executionId!=null) ) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.execution = Context&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getCommandContext()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .getExecutionManager()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .findExecutionById(executionId);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return execution;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&lt;/CODE&gt;&lt;SPAN&gt;It looks like Context or getCommandContext() or&amp;nbsp; getExecutionManager() is null.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;what's happend.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In my mind,when application start s, spring will help us to create these objects and manage them .&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;why,who can help me,thanks.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 03:53:14 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43773#M23929</guid>
      <dc:creator>ggdeveloper</dc:creator>
      <dc:date>2011-09-06T03:53:14Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43774#M23930</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Please post a fully working unit test so we reproduce the error.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Best regards,&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 06:19:08 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43774#M23930</guid>
      <dc:creator>trademak</dc:creator>
      <dc:date>2011-09-06T06:19:08Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43775#M23931</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;Hi,&lt;BR /&gt;&lt;BR /&gt;Please post a fully working unit test so we reproduce the error.&lt;BR /&gt;&lt;BR /&gt;Best regards,&lt;/BLOCKQUOTE&gt;&lt;SPAN&gt;thanks for your help.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;My junit&amp;nbsp; init code is:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;public class Demo {&lt;BR /&gt; &lt;BR /&gt; /** The ctx. */&lt;BR /&gt; private ClassPathXmlApplicationContext ctx;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; /** The process engine. */&lt;BR /&gt; private ProcessEngine processEngine;&lt;BR /&gt; &lt;BR /&gt; /** The runtime service. */&lt;BR /&gt; private RuntimeService runtimeService;&lt;BR /&gt; &lt;BR /&gt; /** The task service. */&lt;BR /&gt; private TaskService taskService;&lt;BR /&gt; &lt;BR /&gt; /** The repository service. */&lt;BR /&gt; private RepositoryService repositoryService;&lt;BR /&gt; &lt;BR /&gt; /** The history service. */&lt;BR /&gt; private HistoryService historyService;&lt;BR /&gt; &lt;BR /&gt; private ExecutionManager executionManager;&lt;BR /&gt; &lt;BR /&gt; /** The ymd. */&lt;BR /&gt; public SimpleDateFormat ymd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss ");&lt;BR /&gt; &lt;BR /&gt; /**&lt;BR /&gt;&amp;nbsp; * &amp;lt;pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * Before.&lt;BR /&gt;&amp;nbsp; * &amp;lt;/pre&amp;gt;&lt;BR /&gt;&amp;nbsp; * &lt;BR /&gt;&amp;nbsp; * @author 宿晓斐 2011-9-2&lt;BR /&gt;&amp;nbsp; */&lt;BR /&gt; @Before&lt;BR /&gt; public void before() {&lt;BR /&gt;&amp;nbsp; ctx = new ClassPathXmlApplicationContext("applicationContext.xml");&lt;BR /&gt;&amp;nbsp; processEngine = (ProcessEngine) ctx.getBean("processEngine");&lt;BR /&gt;&amp;nbsp; runtimeService = (RuntimeService) ctx.getBean("runtimeService");&lt;BR /&gt;&amp;nbsp; repositoryService =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; (RepositoryService) ctx.getBean("repositoryService");&lt;BR /&gt;&amp;nbsp; taskService = (TaskService) ctx.getBean("taskService");&lt;BR /&gt;&amp;nbsp; historyService = (HistoryService) ctx.getBean("historyService");&lt;BR /&gt;&amp;nbsp; executionManager = (ExecutionManager) ctx.getBean("executionManager");&lt;BR /&gt; }&lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;and spring config is:&lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;&amp;lt;!– Activiti工作流 配置 start –&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的数据源等参数配置 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration"&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="dataSource" ref="dataSource" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="transactionManager" ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="databaseSchemaUpdate" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="jobExecutorActivate" value="false" /&amp;gt;&lt;BR /&gt; &amp;lt;/bean&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的流程引擎 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean"&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;property name="processEngineConfiguration" ref="processEngineConfiguration" /&amp;gt;&lt;BR /&gt; &amp;lt;/bean&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的资源库服务,用于获取流程定义等内容 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="repositoryService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getRepositoryService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的运行时服务，可以用于完成任务等操作 –&amp;gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;bean id="runtimeService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getRuntimeService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的任务服务,用于跟任务相关的操作，比如指派处理人等 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="taskService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getTaskService" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt; &amp;lt;!– Activiti的历史服务,用于查询数据，比如查询已经完成和未完成的任务等 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="historyService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getHistoryService" /&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;!– Activiti的管理服务 –&amp;gt;&lt;BR /&gt; &amp;lt;bean id="managementService" factory-bean="processEngine"&lt;BR /&gt;&amp;nbsp; factory-method="getManagementService" /&amp;gt;&lt;BR /&gt; &amp;lt;bean id="executionManager" class="org.activiti.engine.impl.persistence.entity.ExecutionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;!– Activiti&amp;nbsp; 配置 end –&amp;gt;&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;that's all.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Sep 2011 07:40:35 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43775#M23931</guid>
      <dc:creator>ggdeveloper</dc:creator>
      <dc:date>2011-09-06T07:40:35Z</dc:date>
    </item>
    <item>
      <title>Re: how can get process instance's task node  out transition</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43776#M23932</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;It seems your 'unit test' is missing the actual test code. Can you add it?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Are you using the services? Your nullpointer seems to indicate you are calling something on an entity object itself instead of going through a service.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 15 Sep 2011 12:20:15 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/how-can-get-process-instance-s-task-node-out-transition/m-p/43776#M23932</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2011-09-15T12:20:15Z</dc:date>
    </item>
  </channel>
</rss>

