如何将jsp与activiti工作流连接起来

时间:2015-06-15 12:47:51

标签: activiti

我是activiti的新人。我需要从activiti工作流程中显示一个jsp页面。我怎样才能做到这一点。我尝试添加

<userTask id="usertask1" name="User Task" activiti:formKey="C:\Users\au829112\Documents\Userdata\HRSystem\src\main\webapp\WEB-INF\views\flow.jsp"></userTask>

但根本没有工作。任何人请帮忙。

2 个答案:

答案 0 :(得分:0)

您可以使用formKey-Attribute执行此操作。在这里看一下这篇文章:Activiti workflow and Orbeon XForm Integration

它描述了一种将XForms集成到Activiti中的方法,但这也适用于JSP-Pages。

此外,用户指南可以帮助您了解formKey-Attribute:http://www.activiti.org/userguide/#externalFormRendering

Activiti论坛中的几篇文章也涉及此主题:http://forums.activiti.org/content/using-jsp-instead-forms

答案 1 :(得分:0)

我假设您使用的是默认表单引擎(JuelFormEngine),如果您没有明确配置其他内容,那么这就是您正在使用的内容。

在这种情况下,formkey路径应该引用部署栏文件中的文件而不是文件系统上的路径。 请注意JuelFormEngine类中的以下代码以检索表单模板:

 protected String getFormTemplateString(FormData formInstance, String formKey) {
    String deploymentId = formInstance.getDeploymentId();

    ResourceEntity resourceStream = Context
      .getCommandContext()
      .getResourceEntityManager()
      .findResourceByDeploymentIdAndResourceName(deploymentId, formKey);

请注意它如何从部署中提取资源。 因此,为了使用表单键,您需要创建一个.bar文件(一个简单的zip文件),并将过程模型以及任何引用的表单jsp添加到zip文件中。然后将其部署到Activiti引擎。

请注意,Activiti非常灵活,表单键的处理方式完全取决于您使用的表单引擎。

希望这有帮助。