积累

来源:互联网 发布:linux如何新建文件夹 编辑:程序博客网 时间:2024/06/10 10:05
1-owner和caller应该以某种方式与组织机构模型关联(譬如就是一个Party的ID),
    wfId应该以某种方式与被处理实体(例如公文 实体)关联。
   
    OSWorkflow建议的关联方式是在被处理实体中加上wfId字段。owner和caller与实际的组织机构模型关联之后,  才能在工作 流端提供“待办事宜”、“我的任务”之类信息,否则业务应用必须对工作流状态和权限判断之后提供这些信息。

2-
     <step id="1" name="送假单">
        <actions>
          <action id="1" name="送出">
              <restrict-to>
                   <conditions>
                     <condition type="class">
                              <arg name="class.name">
                                com.opensymphony.workflow.util.AllowOwnerOnlyCondition
                              </arg>
                           </condition>
                  </conditions>
              </restrict-to>
           <pre-functions>
            <function type="class">
          <arg name="class.name">com.opensymphony.workflow.util.Caller</arg>
         </function>
           </pre-functions>
           <results>
            <unconditional-result old-status="Finished" status="Queued" step="2" owner="${caller}"/>
           </results>
          
          </action>
        </actions>
     </step>

这段配置就是用来限定下一步的执行人必须是这一步的发起人。

osworkflow限制的用法有:
事實上OSWorkflow 2.7版提供了以下四種限制條件。
  • OSUserGroupCondition:限制由隸屬某指定Group的人執行。
  • StatusCondition:限制step的status為某個值時才能執行。
  • AllowOwnerOnlyCondition:只允許Owner執行。
  • DenyOwnerCondition:只有Owner不能執行。
原创粉丝点击