当前位置: 代码迷 >> Java Web开发 >> JBPM 报错,需回答,在线急等!解决办法
  详细解决方案

JBPM 报错,需回答,在线急等!解决办法

热度:5835   发布时间:2013-02-25 21:18:01.0
JBPM 报错,急需回答,在线急等!!!
Java code
    String isSubmit=request.getParameter("isSubmit");    if(null!=isSubmit&"true".equals(isSubmit)){        String title=request.getParameter("title");        String money_count=request.getParameter("money_count");        String remark=request.getParameter("remark");        String issueperson=request.getSession().getAttribute("loginuser").toString();        JbpmContext jbpmContext=JbpmConfiguration.getInstance().createJbpmContext();        try{            //设置当前的登录用户为issueperson            jbpmContext.setActorId(issueperson);            ProcessDefinition pd=jbpmContext.getGraphSession().findLatestProcessDefinition("payment");            //每次都新建一个实例            ProcessInstance pi=new ProcessInstance();            pi=pd.createProcessInstance();            out.println("<script> alert("+pi.getId()+")</script>");            ContextInstance ci=pi.getContextInstance();            ci.setVariable("issueperson",issueperson);            //创建任务开始节点的TaskInstance            TaskInstance ti=pi.getTaskMgmtInstance().createStartTaskInstance();            //向任务实例当中写入相关变量            ti.setVariable("title",title);            ti.setVariable("money_count",money_count);            ti.setVariable("remark",remark);            //结束任务实例,流程的Token就进入部门经理审批节点            ti.end();                    }finally{            jbpmContext.close();        }        out.println("<h1>报销申请提交成功</h1>");        return;    }

HTML code
<form action="wirte.jsp" method="post">      报销主题:<input type="text" name="title"/><br/>      报销金额:<input type="text" name="money_count" /><br>      报销说明:<input type="text" name="remark"/><br/>      <input type="hidden" name="isSubmit" value="true"/>      <input type="submit" value="提交报销"/>  </form>


分配审核人
Java code
public class ManagerAssignment implements AssignmentHandler,Constants {    @Override    public void assign(Assignable assignable, ExecutionContext executionContext) throws SqlOperationException {        //从当前流程实例上下文当中取出当前报销人        String issueperson=executionContext.getContextInstance().getVariable(this.ISSUE_PERSON).toString();        if(issueperson.equals("user1")){            //当报销人为user1时,部门经理为manager1            assignable.setActorId("manager1");        }else{            //当报销人为其他人时,部门经理为manager2            assignable.setActorId("manager2");        }    }}



------解决方案--------------------------------------------------------
java.sql.BatchUpdateException: ORA-00001: 违反唯一约束条件 (HZRENFANG.SYS_C005718)
查看你更新的字段是不是有相同的了 ,你可以把唯一去了 看看好了没,如果好了,看看是哪个字段引起的。找找原因。
------解决方案--------------------------------------------------------
楼主的实例 我也有一份类似的 呵呵 我的可以运行
  相关解决方案