風人園

          弱水三千,只取一瓢,便能解渴;佛法無邊,奉行一法,便能得益。
          隨筆 - 99, 文章 - 181, 評論 - 56, 引用 - 0
          數據加載中……

          jBPM--Node Type

          Nodetype task-node

          A task node represents one or more tasks that are to be performed by humans. So when execution arrives in a task node, task instances will be created in the task lists of the workflow participants. After that, the node will behave as a wait state. So when the users perform their task, the task completion will trigger the resuming of the execution. In other words, that leads to a new signal being called on the token.
          任務節點:一個或多個可以人為執行的任務。所以當執行到任務節點,任務實例將由工作流參與者的任務列表創建。之后,這個節點會表現為等待狀態。當用戶執行他們的任務,任務完成將會觸發執行繼續。還句話說,在token上會調用一個新的signal

          Nodetype state

          A state is a bare-bones wait state. The difference with a task node is that no task instances will be created in any task list. This can be usefull if the process should wait for an external system. E.g. upon entry of the node (via an action on the node-enter event), a message could be sent to the external system. After that, the process will go into a wait state. When the external system send a response message, this can lead to a token.signal(), which triggers resuming of the process execution.

          Nodetype decision

          Actually there are 2 ways to model a decision. The distinction between the two is based on *who* is making the decision. Should the decision made by the process (read: specified in the process definition). Or should an external entity provide the result of the decision.

          When the decision is to be taken by the process, a decision node should be used. There are basically 2 ways to specify the decision criteria. Simplest is by adding condition elements on the transitions. Conditions are beanshell script expressions that return a boolean. At runtime the decision node will loop over its leaving transitions (in the order as specified in the xml), and evaluate each condition. The first transition for which the conditions resolves to 'true' will be taken. Alternatively, an implementation of the DecisionHandler can be specified. Then the decision is calculated in a java class and the selected leaving transition is returned by the decide-method of the DecisionHandler implementation.

          When the decision is taken by an external party (meaning: not part of the process definition), you should use multiple transitions leaving a state or wait state node. Then the leaving transition can be provided in the external trigger that resumes execution after the wait state is finished. E.g. Token.signal(String transitionName) and TaskInstance.end(String transitionName).

          Nodetype fork

          A fork splits one path of execution into multiple concurrent paths of execution. The default fork behaviour is to create a child token for each transition that leaves the fork, creating a parent-child relation between the token that arrives in the fork.

          Nodetype join

          The default join assumes that all tokens that arrive in the join are children of the same parent. This situation is created when using the fork as mentioned above and when all tokens created by a fork arrive in the same join. A join will end every token that enters the join. Then the join will examine the parent-child relation of the token that enters the join. When all sibling tokens have arrived in the join, the parent token will be propagated over the (unique!) leaving transition. When there are still sibling tokens active, the join will behave as a wait state.

          Nodetype node

          The type node serves the situation where you want to write your own code in a node. The nodetype node expects one subelement action. The action is executed when the execution arrives in the node. The code you write in the actionhandler can do anything you want but it is also responsible for propagating the execution.

          This node can be used if you want to use a JavaAPI to implement some functional logic that is important for the business analyst. By using a node, the node is visible in the graphical representation of the process. For comparison, actions --covered next-- will allow you to add code that is invisible in the graphical representation of the process, in case that logic is not important for the business analyst.

          posted on 2007-01-25 09:32 風人園 閱讀(723) 評論(0)  編輯  收藏 所屬分類: jBPM

          主站蜘蛛池模板: 榆社县| 胶州市| 高雄县| 庐江县| 海城市| 华阴市| 诸城市| 甘孜| 余江县| 尼勒克县| 黑山县| 泌阳县| 扶风县| 固原市| 陈巴尔虎旗| 侯马市| 密云县| 嘉兴市| 临海市| 林甸县| 汾西县| 鲜城| 贺兰县| 南溪县| 新宁县| 嵊泗县| 米林县| 栖霞市| 铜山县| 惠水县| 双鸭山市| 彰化市| 龙山县| 青铜峡市| 十堰市| 清水县| 平遥县| 金寨县| 东兰县| 青龙| 吕梁市|