📄 startworkflowaction.java
字号:
package cn.com.iaspec.workflow.client.web.action.engine;
import javax.servlet.http.*;
import org.apache.struts.action.*;
import cn.com.iaspec.workflow.client.*;
import cn.com.iaspec.workflow.client.web.action.base.*;
import cn.com.iaspec.workflow.util.*;
import cn.com.iaspec.workflow.vo.workflow.*;
import java.util.Enumeration;
import java.util.ArrayList;
public class StartWorkflowAction
extends BaseAction{
public StartWorkflowAction(){
}
public ActionForward start(ActionMapping mapping,ActionForm form,
HttpServletRequest request,HttpServletResponse response)
throws Exception{
HttpSession session=request.getSession(false);
UserInfo user=(UserInfo)session.getAttribute(FlowWebKeys.USER_SESSION);
//String proDefName=SetCharacterEncoding.getChangStr(request.getParameter(
String proDefName=request.getParameter("wf_process_define_name");
String businessName=request.getParameter("wf_business_name");
String businessType=request.getParameter("wf_business_type");
//将非工作流启动请求参数继续传递
ArrayList prcesseVars = new ArrayList();
String excludeStr="method,wf_process_define_name,wf_business_name,wf_business_type";//不被继续传递的参数名称
String[] excludeArray=excludeStr.split(",");
Enumeration enumName=request.getParameterNames();
String paramStr="";
while(enumName.hasMoreElements()){
String paramName=(String)enumName.nextElement();
int iTag=0;
for(int i=0;i<excludeArray.length;i++){
if(excludeArray[i].equals(paramName)){
iTag=1;
break;
}
}
if(iTag!=1){
ProcessRelevantVar processeVar = new ProcessRelevantVar();
processeVar.setVarName(paramName);
processeVar.setVarValue(request.getParameter(paramName));
prcesseVars.add(processeVar);
}
}
WorkflowEngineClient client=new WorkflowEngineClient();
StartedProcessInfo startedProcessInfo=client.createAndStartProcess(
proDefName,businessName,businessType,user,prcesseVars);
request.setAttribute("startedProcessInfo",startedProcessInfo);
System.out.println("********startedProcessInfo workitemId="+startedProcessInfo.getWorkitemId()+" workitemName="+startedProcessInfo.getWorkitemName()+" workitemURL="+startedProcessInfo.getWorkitemURL()+" activityInstanceId"+startedProcessInfo.getProcessInstanceId());
return mapping.findForward("start_page");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -