(2)jBPM websale代码学习: home.jsp(显示任务列表)

    技术2022-05-11  2

    //调用homeBean的getTaskInstances方法,得到一个LIST。该LIST的每个元素的名称为 var="taskInstance"

    //h:column表示一列,相当于JSP中的 TD 

     //f:facet 表示列表表头             

     //h:commandLink相当于我们平常的href,action表示点击后要执行的动作   

        //f:param是在jsf中传递变量的方法     

     //h:outputText 表示要显示的任务的名称                                                       

    用上面的JSF代码就显示了当前进入系统的用户的任务列表,点其中的一个任务名称后,就执行下面的代码:

    homeBean.java:

     

    public String selectTaskInstance() {    // Get the task instance id from request parameter    long taskInstanceId = JsfHelper.getId("taskInstanceId");    TaskInstance taskInstance = taskMgmtSession.loadTaskInstance(taskInstanceId);    taskBean.initialize(taskInstance);    return "task";  }

    其中,从request中取parameter的方法如下:

    public static long getId(String parameterName) {    long value = -1;    String valueText = (String) FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get(parameterName);    try {      Long id = new Long(valueText);      value = id.longValue();    } catch (NumberFormatException e) {      throw new RuntimeException("couldn't parse '"+parameterName+"'='"+valueText+"' as a long");    }    return value;  }

    jBPM把parameter的读取都用自己的方法封装起来,达到了简化和快速开发的目的。


    最新回复(0)