activiti5 流程文件中使用java 方法

来源:互联网 发布:mac能玩qq游戏大厅吗 编辑:程序博客网 时间:2024/06/08 19:43

1.首先创建一个java类UserService.java,有一个方法 

public String getUsers(){


return "123,456,789,147";

}

2.然后配置spring配置文件,把activiti5的配置部分修改成下面的样子(粗体部分是与本主题相关的

<!-- activiti5 -->
<bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration">
   
     <property name="dataSource" ref="dataSource"/>
        <property name="transactionManager" ref="transactionManager"/>
        <property name="databaseSchemaUpdate" value="true"/>
        <property name="jobExecutorActivate" value="false"/>
        <property name="history" value="full"/>
        <property name="processDefinitionCacheLimit" value="10"/>


        <!-- 生成流程图的字体 -->
        <property name="activityFontName" value="宋体"/>
        <property name="labelFontName" value="宋体"/>
        
        <property name="beans">
        <map>
        <entry key="user" value-ref="user"></entry>
        </map>
        </property>


  </bean>
  
  <bean id="processEngine" class="org.activiti.spring.ProcessEngineFactoryBean">
    <property name="processEngineConfiguration" ref="processEngineConfiguration" />
  </bean>
  
  <bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" />
  <bean id="runtimeService" factory-bean="processEngine" factory-method="getRuntimeService" />
  <bean id="taskService" factory-bean="processEngine" factory-method="getTaskService" />
  <bean id="historyService" factory-bean="processEngine" factory-method="getHistoryService" />
  <bean id="managementService" factory-bean="processEngine" factory-method="getManagementService" />
 <bean id="identityService" factory-bean="processEngine" factory-method="getIdentityService" />
  <bean id="traceService" class="com.gdzy.CJFX.service.activiti.WorkflowTraceService"></bean>
  <bean id="user" class="com.gdzy.CJFX.service.activiti.UserService" ></bean>

3、现在可以在流程文件中调用UserService 的getUsers方法了,如下:

 <userTask id="usertask1" name="填写申请"  activiti:candidateUsers="${user.getUsers()}" >
      <extensionElements>
        <activiti:formProperty id="request" name="request.jsp" required="true"></activiti:formProperty>
      </extensionElements>
    </userTask>

注意:getUsers的返回值只可以是String类型和Collection<String>类型

原创粉丝点击