将新的工作流程添加到Alfresco Share

7

我是Alfresco/Activiti的新手。

我们公司正在使用Skelta BPM.NET(与我们自行开发的RMS集成),现在我们想看看其他BPM软件。

最近,我学会了如何使用Eclipse创建新的工作流,并将它们导入独立安装的Activiti中。

现在,我想将这个工作流发布到Alfresco共享。有没有简单的方法可以做到这一点?我在Google上搜索了整天,但没有找到任何有用的信息。

还有一个关于安装的问题: 是否可能将Activiti及其所有Web应用程序安装在运行Alfresco的同一Tomcat上?Apache Ant只能构建独立安装版本。这两个应用程序能否合并?

谢谢您的信息,Anze

2个回答

9
如果您将BPMN 2.0流程定义的XML文件放在Alfresco的类路径中的某个位置,那么您可以使用Alfresco的工作流控制台来部署该定义。例如,我总是将我的工作流放置在WEB-INF/classes/alfresco/extension/workflows/someFolder下,其中someFolder是我正在使用的每个流程定义的唯一文件夹。工作流控制台位于http://localhost:8080/alfresco/faces/jsp/admin/workflow-console.jsp。假设您正在使用3.4.e版本,这是一个显示Activiti集成的预览版本,您可以通过以下命令通过工作流控制台部署一个流程:
    deploy activiti /alfresco/extension/workflows/activiti/activitiHelloWorld.activiti

通过输入help指令,您可以查看其他有用的工作流控制台命令。

另外,正如Gagravarr建议的那样,您可以使用Spring在Alfresco启动时部署您的工作流。Spring配置文件必须以“-context.xml”结尾,并将其放置在WEB-INF/classes/alfresco/extension中。

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

    <beans>

  <bean id="someco.workflowBootstrap" parent="workflowDeployer">
    <property name="workflowDefinitions">
      <list>
        <props>
          <prop key="engineId">activiti</prop>
          <prop key="location">alfresco/extension/workflows/activiti/activitiHelloWorld.bpmn20.xml</prop>
          <prop key="mimetype">text/xml</prop>
          <prop key="redeploy">false</prop>         
        </props>
      </list>
    </property>
    <property name="models">
      <list>
        <value>alfresco/extension/model/scWorkflowModel.xml</value>
      </list>
    </property>
    <property name="labels">
      <list>
        <value>alfresco.extension.messages.scWorkflow</value>
      </list>
    </property>
  </bean>
    </beans>

如果您想要一些简单工作流的实际示例,并且这些工作流同时在jBPM和Activiti中实现以便于比较,请查看此博客文章:http://ecmarchitect.com/archives/2011/04/27/1357
Jeff

1

针对你的问题的第二部分:

如果你想要使用Alfresco和Activiti,那么你应该尝试使用3.4.e版本(或最近的夜间构建版本)。3.4.e已经内置了Activiti,所以你不需要合并Web应用程序。所有东西都已经为你准备好了。

对于第一部分,只要你使用的是3.4.e(或更晚的夜间构建版本),那么你应该能够以与之前部署到JBMP相同的方式部署到Activiti。使用Activiti进行工作流维基页面也应该能帮助你,这个维基也可能有所帮助。


我们刚刚安装了.e版本,并在不同的机器上安装了独立的Activiti。现在,我们想在同一个Tomcat实例上使用所有的activiti-*(探针、浏览器、kickstart、cycle、modeler)以及Alfresco。是否有可能实现这一点?我们仅将其用于开发目的。 - AnzeR
jBPM在Eclipse插件中具有部署功能,而Activiti目前没有。有人能提供一份逐步教程吗?如何将ZIP/BAR文件(在Activiti的Eclipse插件中制作)部署到Alfresco?这是我第一次安装Alfresco,所以我以前从未使用过jBPM和Alfresco;只是阅读了一些教程 :( - AnzeR
你尝试过访问 http://wiki.alfresco.com/wiki/Workflow_with_Activiti 吗?这个页面应该包含了将你的工作流部署到Alfresco中Activiti所需的所有步骤。 - Gagravarr
正如我所说,我是Alfresco的新手,所以我不知道workflowDeployer bean是什么。在您提供的维基中,没有关于它的内容。只有指向外部资源(jBPM)的链接以及有关部署流程定义的几行内容。 - AnzeR
这是一个Spring Bean。http://wiki.alfresco.com/wiki/Overriding_Spring_Configuration 可以帮助您将自己的Spring Bean添加到Alfresco中。 - Gagravarr
我刚刚使用工作流控制台部署了我的虚拟进程。希望那些带有.form文件的进程也可以用同样的方式部署 :) 不幸的是,我对Java并没有太多的了解。我知道我必须学习才能构建自己的进程 :) - AnzeR

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接