<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Oracle神諭

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      284 隨筆 :: 9 文章 :: 106 評論 :: 0 Trackbacks

    9.2. Task instances|任務實例|
    A task instance can be assigned to an actorId (java.lang.String).|任務實例被分派給一個行為ID。| All task instances are stored in one table of the database (JBPM_TASKINSTANCE).|所有的實例都被存儲在數(shù)據(jù)庫的一個表格里(JBPM_TASKINSTANCE)。| By querying this table for all task instances for a given actorId, you get the task list for that perticular user. |通過查詢這個行為ID表的所有任務實例的表,你得到指定用戶的任務列表。|

    The jBPM task list mechanism can combine jBPM tasks with other tasks, even when those tasks are unrelated to a process execution.|jBPM任務列表機制可以與其它任務結(jié)合jBPM任務,甚至當這些任務與一個流程執(zhí)行無關(guān)。| That way jBPM developers can easily combine jBPM-process-tasks with tasks of other applications in one centralized task-list-repository.|那種方法jBPM開發(fā)人員可以和容易的使jBPM流程任務在一個集中的任務列表庫與其他程序中的任務|

    9.2.1. Task instance life cycle |任務實例生命周期|
    The task instance lifecycle is straightforward: After creation, task instances can optionally be started.|任務生命周期是 簡單的:在創(chuàng)建之后,任務實例可以隨意地被開始。| Then, task instances can be ended, which means that the task instance is marked as completed.|接著,任務實例可能被結(jié)束,它意味著任務實例已經(jīng)被標志已完成。|

    Note that for flexibility, assignment is not part of the life cycle.|注意適應性、委派不是生命周期的一部分。| So task instances can be assigned or not assigned.|所有任務實例可能被委派也可能不被委派。| Task instance assignment does not have an influence on the task instance life cycle.|任務實例委派不影響任務實例的生命周期。|

    Task instances are typically created by the process execution entering a task-node (with the method TaskMgmtInstance.createTaskInstance(...)).|任務實例被進入一個任務節(jié)點流程執(zhí)行代典型的創(chuàng)建(使用TaskMgmtInstance.createInstance(...)方法)| Then, a user interface component will query the database for the tasklists using the TaskMgmtSession.findTaskInstancesByActorId(...).|接著一個用戶接口組件將要為任務列表查詢數(shù)據(jù)庫使用TaskMgmtSession.findTaskInstancesByActorId(...)| Then, after collecting input from the user, the UI component calls TaskInstance.assign(String), TaskInstance.start() or TaskInstance.end(...).|接著,在收集從用戶收入之后,這個UI組件調(diào)用TaskIntsance.assign(String),TaskInstance.start() 或者 TaskInstance.end(...)。|

    A task instance maintains it's state by means of date-properties : create, start and end.|一個任務實例依靠日期屬性維護它的狀態(tài):創(chuàng)建、開始、結(jié)束。| Those properties can be accessed by their respective getters on the TaskInstance.|這些屬性可以通過它們的各自在任務實例上的的getters被訪問。|

    Currently, completed task instances are marked with an end date so that they are not fetched with subsequent queries for tasks lists.|通常地,完成的任務實例被標志為結(jié)束狀態(tài),所以他們并不通過對任務列表的子查詢獲得。| But they remain in the JBPM_TASKINSTANCE table.|但是他們?nèi)匀槐3衷贘BPM_TASKINGSTANCE表中。|

    9.2.2. Task instances and graph execution|任務實例和圖表執(zhí)行|
    Task instances are the items in an actor's tasklist.|任務實例是在行動者的任務列表中的項目。| Task instances can be signalling.|任務實例可以被發(fā)信號的| A signalling task instance is a task instance that, when completed, can send a signal to its token to continue the process execution.|一個發(fā)信號的任務實例是一個這樣的任務實例,當被完成時候,可以發(fā)送一個信號給它的令牌以繼續(xù)流程的執(zhí)行。| Task instances can be blocking, meaning that the related token (=path of execution) is not allowed to leave the task-node before the task instance is completed.|任務實例可以被模塊化,意味著有關(guān)系的令牌(執(zhí)行路徑)在任務實例完成之前允許離開任務節(jié)點。| By default task instances are signalling and non-blocking. |缺省的任務實例是被信號化且非模塊化的。|

    In case more than one task instance are associated with a task-node, the process developer can specify how completion of the task instances affects continuation of the process.|萬一超過一個的任務實例與一個任務節(jié)點關(guān)聯(lián),這個流程開發(fā)者可以定義 任務實例的完成如何影響流程的繼續(xù)。| Following is the list of values that can be given to the signal-property of a task-node.|接下來是值的列表可以指定給節(jié)點的信號屬性。|

    last: This is the default.|最后:這是缺省的。| Proceeds execution when the last task instance is completed.|當最后流程執(zhí)行完畢,繼續(xù)進行執(zhí)行。| When no tasks are created on entrance of this node, execution waits in the task node till tasks are created.|當在這個的節(jié)點的入口沒有任務被創(chuàng)建,在任務節(jié)點中執(zhí)行等待直到這些任務被創(chuàng)建。|
    last-wait: Proceeds execution when the last task instance is completed. When no tasks are created on entrance of this node, execution waits in the task node till tasks are created.
    first: Proceeds execution when the first task instance is completed. When no tasks are created on entrance of this node, execution is continued.
    first-wait: Proceeds execution when the first task instance is completed. When no tasks are created on entrance of this node, execution is continued.
    unsynchronized: Execution always continues, regardless wether tasks are created or still unfinished.
    never: Execution never continues, regardless wether tasks are created or still unfinished.
    Task instance creation might be based upon a runtime calculation. In that case, add an ActionHandler on the node-enter event of the task-node and set the attribute create-tasks="false". Here is an example of such an action handler implementation:

    public class CreateTasks implements ActionHandler {
      public void execute(ExecutionContext executionContext) throws Exception {
        Token token = executionContext.getToken();
        TaskMgmtInstance tmi = executionContext.getTaskMgmtInstance();
         
        TaskNode taskNode = (TaskNode) executionContext.getNode();
        Task changeNappy = taskNode.getTask("change nappy");

        // now, 2 task instances are created for the same task.
        tmi.createTaskInstance(changeNappy, token);
        tmi.createTaskInstance(changeNappy, token);
      }
    }
    As shown in the example the tasks to be created can be specified in the task-node. They could also be specified in the process-definition and fetched from the TaskMgmtDefinition. TaskMgmtDefinition extends the ProcessDefinition with task management information.

    The API method for marking task instances as completed is TaskInstance.end(). Optionally, you can specify a transition in the end method. In case the completion of this task instance triggers continuation of the execution, the task-node is left over the specified transition.

    posted on 2005-06-15 10:33 java世界暢談 閱讀(723) 評論(0)  編輯  收藏 所屬分類: 工作流
    主站蜘蛛池模板: 日日麻批免费40分钟无码 | 欧洲一级毛片免费| 久久91亚洲人成电影网站| A国产一区二区免费入口| 国产成人亚洲综合无码| 国产在线观看xxxx免费| 亚洲日本乱码在线观看| 日韩内射激情视频在线播放免费| 亚洲AV日韩AV鸥美在线观看| 无码国产精品一区二区免费3p| 在线免费观看亚洲| 成人免费视频77777| 亚洲中文字幕无码av永久| 噜噜嘿在线视频免费观看| 色妞www精品视频免费看| 精品国产亚洲男女在线线电影| 国产精品永久免费视频| 亚洲国产精品无码中文字| 久久久久久一品道精品免费看| 亚洲美女aⅴ久久久91| 18禁止观看免费私人影院| 亚洲欧洲日韩极速播放| 性做久久久久免费观看| 四虎国产精品永免费| 久久综合九九亚洲一区| 美女视频黄免费亚洲| 青青久久精品国产免费看| 亚洲av无码一区二区乱子伦as| 成人午夜免费福利视频| 国产亚洲综合久久| 亚洲Av无码专区国产乱码DVD | 亚洲国产精品碰碰| 精品一区二区三区免费| 亚洲一级毛片在线观| 无码国产亚洲日韩国精品视频一区二区三区| selaoban在线视频免费精品| 在线免费观看亚洲| 免费人成视网站在线观看不卡| 一级毛片免费观看不卡的| 亚洲AV无码专区在线观看成人| 亚洲av无码专区国产乱码在线观看 |