我正在尝试使用 alfresco 企业中的 activiti 创建个性化的工作流程。
在该工作流程中,有一个独家网关,有 3 种可能的结果:
- 接受
- 问另一个
- 拒绝
目标是提供这三个选项,并允许工作流程根据用户选择的选项遵循正确的路径(这里没有默认结果)。
问题:
我按照手册中的说明制作了 XML 标记,并将其放置在应有的位置,但在服务器中,只显示默认的“任务完成”按钮,而不是我在 XML 中提到的按钮。
我将在此处粘贴与此相关的相关代码。如果您需要更多信息,只需在评论中询问您需要哪个部分即可。此外,我已经确认 alfresco 正在读取所有 XML 内容,除此以外,所有内容都在按应有的方式处理。
tomcat/共享/类/alfresco/web-extension/share-config-custom.xml
<alfresco-config>
<!-- Imports are required to allow references to definitions in other models -->
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0" prefix="d" />
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm" />
</imports>
...
<config evaluator="task-type" condition="wf:selectSituation">
<forms>
<form>
<field-visibility>
<show id="message" />
<show id="bpm:dueDate" />
<show id="bpm:priority" />
<show id="wf:workDescription" />
<show id="packageItems" />
<show id="bpm:comment" />
<show id="wf:reviewOutcome" />
</field-visibility>
<appearance>
<set id="" appearance="title" label-id="workflow.set.general" />
<set id="info" appearance="" template="/org/alfresco/components/form/2-column-set.ftl" />
<set id="items" appearance="title" label-id="workflow.set.items" />
<set id="work" appearance="title" label-id="workflow.set.work" />
<set id="other" appearance="title" label-id="workflow.set.other" />
<set id="response" appearance="title" label-id="workflow.set.response" />
<field id="message" label-id="workflow.field.message">
<control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
<field id="bpm:priority" label-id="workflow.field.priority" set="info" read-only="true">
<control template="/org/alfresco/components/form/controls/workflow/priority.ftl" />
</field>
<field id="bpm:dueDate" set="info" label-id="workflow.field.due">
<control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
<field id="packageItems" set="items" />
<field id="wf:workDescription" set="work">
<control template="/org/alfresco/components/form/controls/info.ftl" />
</field>
<field id="bpm:comment" label-id="workflow.field.comment"
set="response">
<control template="/org/alfresco/components/form/controls/textarea.ftl" />
</field>
<field id="wf:reviewOutcome" set="response" >
<control template="/org/alfresco/components/form/controls/workflow/activiti-transitions.ftl" />
</field>
</appearance>
</form>
</forms>
</config>
tomcat/共享/类/alfresco/扩展/模型/customModel-custom.xml
<?xml version="1.0" encoding="UTF-8"?>
<model name="wf:workflowmodel" xmlns="http://www.alfresco.org/model/dictionary/1.0">
<imports>
<!-- Import Alfresco Dictionary Definitions -->
<import uri="http://www.alfresco.org/model/dictionary/1.0"
prefix="d" />
<!-- Import Alfresco System Definitions -->
<import uri="http://www.alfresco.org/model/system/1.0" prefix="sys" />
<!-- Import Alfresco Content Domain Model Definitions -->
<import uri="http://www.alfresco.org/model/content/1.0" prefix="cm" />
<!-- Import User Model Definitions -->
<import uri="http://www.alfresco.org/model/user/1.0" prefix="usr" />
<import uri="http://www.alfresco.org/model/bpm/1.0" prefix="bpm" />
</imports>
<namespaces>
<namespace uri="http://www.alfresco.org/model/workflow/1.0" prefix="wf" />
</namespaces>
...
<type name="wf:reviewEstimate">
<parent>bpm:activitiOutcomeTask</parent>
<properties>
<property name="wf:reviewOutcome">
<type>d:text</type>
<default>Reject</default>
<constraints>
<constraint name="wf:reviewOutcomeOptions" type="LIST">
<parameter name="allowedValues">
<list>
<value>Approve</value>
<value>Ask Another</value>
<value>Reject</value>
</list>
</parameter>
</constraint>
</constraints>
</property>
</properties>
<overrides>
<property name="bpm:packageItemActionGroup">
<default>edit_package_item_actions</default>
</property>
<property name="bpm:outcomePropertyName">
<default>{http://www.alfresco.org/model/workflow/1.0}reviewOutcome
</default>
</property>
</overrides>
<mandatory-aspects>
<aspect>bpm:assignee</aspect>
<aspect>wf:workInfo</aspect>
</mandatory-aspects>
</type>
...
我想使用“alfresco-share”标签,但它不存在。“alfresco”标签也是如此。
答案1
问题在于,我使用的指南使用“wf”命名空间作为其执行的所有操作的命名空间。似乎“wf”命名空间是保留的,或者在指南制作后(2012 年中)成为保留的,因此导致某些操作有效,而其他操作无效。
我改变了命名空间并且这部分开始按预期工作。