Alfresco Workflow 表单中的多个受让人控件

2023-12-03

我需要构建一个工作流程,允许管理员在工作流程的第一个任务中从两个不同的组中选择两个受让人。我可以在一种表单中使用两个受让人控件吗?如何?


你需要:

  • 在任务内容模型中,将 2 个受让人定义为任务类型的 2 个独立关联。

        <type name="my:starttask">
        <parent>bpm:startTask</parent>
          <associations>
            <association name="my:firstassignee">
                <title>firstassignee</title>
                <source>
                    <mandatory>false</mandatory>
                    <many>false</many>
                </source>
                <target>
                    <class>cm:person</class>
                    <mandatory>false</mandatory>
                    <many>false</many>
                </target>
            </association>
            <association name="my:secondassignee">
                <title>secondassignee</title>
                <source>
                    <mandatory>false</mandatory>
                    <many>false</many>
                </source>
                <target>
                    <class>cm:person</class>
                    <mandatory>false</mandatory>
                    <many>false</many>
                </target>
            </association>
        </associations>
       </type>
    
  • 在您的共享配置自定义中,将 2 个关联定义为权限控制:

          <config condition="activiti$myworkflow" evaluator="string-compare">
            <forms>
             <form>
            <field-visibility>
                <show id="my:firstassignee" />
                <show id="my:secondassignee" />
             </field-visibility>
            <appearance>
                <field set="actors" id="my:firstassignee" >
                    <control template="/org/alfresco/components/form/controls/authority.ftl">
    
                    </control>
                </field>
    
                <field set="actors" id="my:secondassignee">
                    <control template="/org/alfresco/components/form/controls/authority.ftl">
    
                    </control>
                </field>
    
  • 在 bpm20 文件中,在流程中定义两个 ActivitiScriptNode 变量,并为具有两个 cm:person 关联的 usertask/starttask 定义一个 ExecutionListener。该执行侦听器应该获取输入的值并将它们放入流程范围变量中,如下所示:

      <extensionElements>
        <activiti:taskListener class="org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener" event="complete">
          <activiti:field name="script">
            <activiti:string>
               execution.setVariable('firstActivitiScriptNodeVar', task.getVariable('my_firstassignee'));
               execution.setVariable('secondActivitiScriptNodeVar', task.getVariable('my_secondassignee'));
            </activiti:string>
          </activiti:field>
        </activiti:taskListener>
      </extensionElements>
    
  • 然后将此代码添加到您的 UserTasks 中,将其分配给输入的用户,如下所示:

    <humanPerformer>
                <resourceAssignmentExpression>
                    <formalExpression>${firstActivitiScriptNodeVar.properties.userName}</formalExpression>
                </resourceAssignmentExpression>
    </humanPerformer>
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Alfresco Workflow 表单中的多个受让人控件 的相关文章

  • 如何使用 Spring Security 跨多个基于 JVM 的应用程序实现单点登录

    我目前正在尝试跨多个基于 JVM Grails Servlet 的 Web 应用程序实现单点登录解决方案 这些应用程序目前都部署在同一个 servlet 容器 当前是 Tomcat 但不想将我的解决方案仅限于 Tomcat 中 所有 Web
  • 从 servlet 向 applet 发送数据:我怎样才能实现这个?

    我要发送 发送HashMap反对请求它的小程序 servlet 具有这样的功能HashMap目的 我有办法做到这一点吗 Applet requests HashMap object gt Servlet listens to this re
  • 空 EntityManager/EJB 注入 MDB

    我有一个消息驱动 bean MDB 部署到 WebLogic 12 1 3 我尝试使用 PersistenceContext 注释将实体管理器注入 MDB 但实体管理器为空 我还尝试注入一个简单的无状态会话 bean 它也是空的 但是 Me
  • 将 CommonJ 实现与 GlassFish 和 Spring 3 结合使用

    为了统一 Websphere 7 和 GlassFish 3 环境之间的部署 我决定尝试在 GlassFish 中实现 CommonJ WorkManager 和 TimerManager 但它并没有完全按预期工作 我做了以下事情 使用位于
  • java.lang.ClassNotFoundException:javax.mail.MessagingException

    我想使用 eclipse 将电子邮件从我的 gmail 帐户发送到另一个邮件帐户 我使用 apache tomcat 7 0 34 作为我的 Web 服务器 并使用端口 8080 作为 apache 服务器 HTTP 1 1 并使用 JRE
  • Eclipse 中的 Java EE 视角

    我有标准版的 eclipse Galileo 现在我想在上面开发企业应用程序 知道如何获得 Java EE 视角吗 标准版如何安装Java EE工具 我有同样的问题 我首先使用 Ubuntu 软件中心安装了最新的 Eclipse 平台 In
  • 用于层次结构树角色的 Spring Security / Java EE 解决方案

    我知道 Spring Security 非常适合标准角色和基于权限的授权 我不确定的是这种情况 系统中管理着 10 000 名员工 员工被组织成组织结构图 跨部门的谁向谁报告的树 其中一些员工是用户 这些用户仅被允许访问其职责范围内的员工
  • 休眠以持久保存日期

    有没有办法告诉 Hibernate java util Date 应该持久保存 我需要这个来解决 MySQL 中缺少的毫秒分辨率问题 您能想到这种方法有什么缺点吗 您可以自己创建字段long 或者使用自定义的UserType 实施后User
  • Java EE 快速通道(快速学习企业 Java)[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 部署到 Glassfish 4.1 时 URL 模式无效

    如果用户已经通过身份验证 我有一个网络过滤器可以从登录和索引页面重定向 最初我有一个无效的 URL 模式 我修复了无效模式并尝试重新部署以接收以下内容 java lang IllegalArgumentException Invalid U
  • Spring Data JPA:查询如何返回非实体对象或对象列表?

    我在我的项目中使用 Spring Data JPA 我正在演奏数百万张唱片 我有一个要求 我必须获取各种表的数据并构建一个对象 然后将其绘制在 UI 上 现在如何实现我的 Spring 数据存储库 我读到它可以通过命名本机查询来实现 如果指
  • 在EJB3中如何使用JNDI获取新的Stateful Session Bean?

    我正在尝试使用 JNDI 在 servlet 中获取新的有状态会话 Bean 作为局部变量 我的doGet 方法有以下几种 Bean bean Bean new InitialContext lookup beanName 我尝试过包括ja
  • 如何在 Eclipse 中更改动态 Web 项目的上下文根?

    我在 Eclipse 中开发了一个动态 Web 项目 我可以使用以下 URL 通过浏览器访问该应用程序 http localhost 8080 MyDynamicWebApp 我想将访问URL更改为 http localhost 8080
  • 在同一个容器但不同的耳朵中使用本地EJB

    我正在尝试在同一个 Glassfish 但不同的耳朵中使用本地 EJB 但是Glassfish找不到本地EJB或者无法消费 我读到了这个 根据 JavaEE 教程 Local bean 的客户端 必须在与其访问的企业 bean 相同的 JV
  • 如何使用 JSESSIONID 手动加载 Java 会话?

    我有一个处理多部分表单帖子的 servlet 该帖子实际上是由嵌入在页面中的 Flash 文件上传组件制作的 在某些浏览器中 Flash 生成的 POST 不包含 JSESSIONID 这使得我无法在发布期间从会话加载某些信息 Flash
  • Hibernate 标准接受 %% 值

    我正在使用下面的 Hibernate 代码来过滤workFlowName crt add Restrictions like workFlowName workFlow MatchMode ANYWHERE crt is the crite
  • ClientRequestFactory RestEasy 已弃用...还有其他 RestEasy 替代方案吗?

    我需要使用其他人创建的 RestService 的接口来创建轻松的客户端 这工作很好 除了一件事 当我从rest easy 2 3 5 Final更新到resteasy 3 0 x时 Client RequestFactory类看起来像 D
  • Tomcat 与 Weblogic JNDI 查找

    我们使用的 Weblogic 服务器已配置为允许 JNDI 数据源名称 例如 appds 对于开发 本地主机 我们可能会运行 Tomcat 并且在 server xml 的 部分中声明时 Tomcat 会将 JNDI 数据源挂在 JNDI
  • struts.xml 和 struts-config.xml

    struts xml 和 struts config xml 有什么区别 两者是相同的还是有什么区别 Struts框架的核心配置文件默认是struts xml对于 Struts 2 和struts config xml对于Struts 1
  • 会话超时(session.setMaxInactiveInterval)在 Google Appengine 中不起作用

    我尝试使用以下命令为特定用户设置会话超时session setMaxInactiveInterval 30 60 30分钟 但默认情况下它被分配为 86400 秒 24 小时 也在 Web xml 中尝试过

随机推荐

  • Play Framework 测试助手需要隐式“Materializer”

    我正在使用 Play 2 6 x 和测试助手status result 有方法 def status of Accumulator ByteString Result implicit timeout Timeout mat Materia
  • 如何描述本地函数(跟踪)?

    在 Common Lisp 中 函数 跟踪名称 可用于查看有关函数调用的输出 如果我的函数是用局部作用域声明的 我如何描述它以进行跟踪 例如 如何跟踪栏 如下 defun foo x labels bar y format t bar a
  • 使用 Cloud Functions 作为 GC Composer DAG 中的运算符

    码友们 对于我有兴趣使用的项目谷歌云作曲家处理由可在工作流之间共享的操作组成的多个工作流 在我看来 云函数是执行任务的完美方式 因为这些操作在 Composer 中DAG 据我了解 我需要一个运算符来调用云函数 其中包含特定于特定 DAG
  • C#:将桌面壁纸设置为纯色

    我使用此代码删除当前壁纸并设置纯色 public static class WallpaperColorChanger public static void SetColor Color color Remove the current w
  • MongoDB 中的 findAndModify 和 update 有什么区别?

    我有点困惑findAndModifyMongoDB 中的方法 相对于它有什么优势update方法 对我来说 它似乎只是先返回项目 然后更新它 但为什么我需要先退货呢 我读了MongoDB 权威指南它说它对于操作队列和执行其他需要获取和设置风
  • 如何在颤动中从图库中检索图像[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我正在尝试在 Flutter 中制作一个图像选择器 我可以从图库中选择图像 我不知道图像选择器的一些内置代码或库 我知道我可能有点晚了 但你可以使用这个库 它返回图库以及当前正在
  • ASP.NET Core 中的目录服务和帐户管理问题

    我有一个 ASP NET Core API 项目 我想利用 DirectoryServices 和 DirectoryServices AccountManagement 命名空间 经过一番研究 我想我找到了一些可以使用的 project
  • Spring boot spring.batch.job.enabled=false 无法识别

    I tried spring batch job enabled false在 application properties 和 Dspring batch job enabled false运行 jar 文件时 However Enabl
  • 指定的填充模式对此算法无效 - .net Core

    当我从 net 4 5 转换为 net core 2 时 收到以下错误消息 代码完全相同 我看过一些帖子 但没有一个能解决这个错误 我正在使用 RijndaelManaged 加密 Specified padding mode is not
  • 实现Unity Singleton的最佳方式?

    我是 Unity 的初学者 我目前正在实施单例 我在学习的过程中有疑问 像标题一样在Unity中实现Singleton的最佳方式是什么 我明白为什么要使用单例 那是 创建一个对象一次 并在需要时使用它 我理解正确吗 实现单例的方法有很多种
  • 如何在react中动态添加类?

    在简单的井字游戏中 当有人获胜时 突出显示导致获胜的三个方块 p class codepen See the Pen a href https codepen io akshgods pen PQyERJ Simple tic tac ga
  • 以编程方式修剪 mp3 文件

    嘿 我需要在我的应用程序中修剪 剪切 编辑音频文件 我尝试使用 ffmpeg 但我不知道如何安装这个库或者如何使用它 所以 有人能给我一个好的建议吗 指南如何将 ffmpeg 2 3 与 android ndk r10 for window
  • SendKeys.SendWait 在 Windows 7 中不发送“{ENTER}”

    我已经在带有 XP 和 Windows 7 的 Visual Studio 2008 中尝试过此操作 SendKeys SendWait sometext ENTER ENTER 这用于在打开文件对话框中打开文件 它可以在带有 VS2008
  • GLSL:iPhone 应用程序无法访问内置属性?

    我在这里真的很绝望 我使用 Xcode 尝试在 iPhone 上实现一些 OpenGL 的东西 我必须为 Phong Lighting 编写一个着色器 我声明了我的几何体 顶点 索引 计算等 并将相应的参数作为属性传递给着色器 用 GLSL
  • 适用于 Android 的 Firebase 浅查询参数

    根据以下链接 Firebase 查询有一个可用的浅选项 Firebase 中的浅查询 Android 也支持吗 所有 Firebase SDK 都不支持对数据库进行浅层查询 它们都检索整个节点 唯一支持浅层查询的 Firebase 数据库
  • MySQL INSERT IF(自定义 if 语句)

    首先 这是问题的简洁摘要 是否可以运行INSERT有条件的陈述 与此类似的东西 IF expression INSERT 现在 我知道我可以使用存储过程来做到这一点 我的问题是 我可以在查询中执行此操作吗 现在 我为什么要这么做 假设我们有
  • 无法在 Google Slides API 上使用 PageSize 创建演示文稿

    我正在尝试创建新的 4 3 演示文稿 而不是 16 9 我阅读了此参考文献并编写了一些 ruby 代码 但它不起作用 新演示文稿的高度与我指定的高度不同 方法 presentations create 幻灯片 API谷歌开发者 foo rb
  • Java5 -XX:MaxHeapFreeRatio=45 即使超过 45% 的堆空闲也不会释放堆

    我有一个带有以下参数的 java 应用程序 但即使总可用空间大于 45 可以通过可视化 VM 查看 堆也不会被回收 JVM 是否有任何原因不释放该堆空间 相同的设置在 Java6 中按预期工作 运行Java5运行时和编译时 java jar
  • 如何使用sql从日期字段按月分组

    如何仅按日期字段中的月份进行分组 而不是按天分组 这是我的日期字段的样子 2012 05 01 这是我当前的 SQL select Closing Date Category COUNT Status TotalCount from MyT
  • Alfresco Workflow 表单中的多个受让人控件

    我需要构建一个工作流程 允许管理员在工作流程的第一个任务中从两个不同的组中选择两个受让人 我可以在一种表单中使用两个受让人控件吗 如何 你需要 在任务内容模型中 将 2 个受让人定义为任务类型的 2 个独立关联