Ok! Thank you so much for your help.
And do you know how can I insert a timer in this code: if when a user don't 
partecipate for 3 hours in a workflow to change at next user in list? 

<?xml version="1.0"?>
<process-definition name="wkf">
  <swimlane name="initiator" />
  
  <start-state>
    <task swimlane='initiator' name="start" />
    <transition to="timerNode"></transition>
  </start-state>
  
  <state name="timerNode">
        <timer name="scheduler" duedate='5 minutes' repeat='true'>
            <transition to='choose participants node' />
        </timer>
  </state>

  <task-node name="choose participants node">
    <task name="choose-participant" swimlane="initiator" />
    <transition to="condition on participants" />
  </task-node>
  
  <!-- add rights -->
  <decision name="condition on participants">
    <event type="node-enter">
      <script>
        <variable name="participant" />
        <expression><![CDATA[executionContext.setVariable("previousActorId", 
(participant == null ? executionContext.getJbpmContext().getActorId() : 
participant.actors))]]></expression>
      </script>
    </event>
    <transition to="setup rights">
      <script>
        <variable name="participants" />
        <variable name="participant" access="write" />
        <expression><![CDATA[participant = 
participants.remove(0)]]></expression>
      </script>
    </transition>
    <transition condition="#{empty participants}" to="follow transition" />
  </decision>

  <node name="setup rights">
    <action
      class="org.nuxeo.ecm.platform.jbpm.core.helper.AddRightsActionHandler">
      <list>participants</list>
    </action>
    <transition to="validate node" />
  </node>

  <task-node name="validate node">
    <task name="validate">
      <event type="task-create">
        <action
          
class="org.nuxeo.ecm.platform.jbpm.core.helper.TaskNotificationHandler" />
      </event>
      <controller
        
class="org.nuxeo.ecm.platform.jbpm.core.node.VirtualTaskInstanceController" />
      <assignment pooled-actors="#{participant.actors}" />
    </task>
    <transition name="validate" to="condition on participants">
    </transition>
    <transition name="reject" to="validate after reject node" />
  </task-node>

  <task-node name="validate after reject node">
    <task name="validate-after-reject">
      <event type="task-create">
        <action
          
class="org.nuxeo.ecm.platform.jbpm.core.helper.TaskNotificationHandler" />
      </event>
      <controller
        class="org.nuxeo.ecm.platform.jbpm.core.node.ValidateRejectController" 
/>
      <assignment 
pooled-actors="#{contextInstance.variables['previousActorId']}" />
    </task>
    <transition to="condition on participants" />
  </task-node>

  <node name="follow transition">
    <action
      
class="org.nuxeo.ecm.platform.jbpm.core.helper.LifecycleTransitionActionHandler"
 />
    <transition to="end" />
  </node>

  <end-state name="end">
    <event type="node-enter">
      <action
        
class="org.nuxeo.ecm.platform.jbpm.core.helper.RemoveRightsActionHandler" />
    </event>
  </end-state>
</process-definition>






                                          
_________________________________________________________________
Curiosità, trucchi e consigli per il tuo Messenger!
http://www.messenger.it

<<attachment: Logo.gif>>

_______________________________________________
ECM mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm
To unsubscribe, go to http://lists.nuxeo.com/mailman/options/ecm

Reply via email to