gpt4 book ai didi

java - Alfresco - 在工作流程中获取用户名

转载 作者:行者123 更新时间:2023-11-30 08:07:15 25 4
gpt4 key购买 nike

当我在工作流上创建时,我正在搜索 assignees 的用户名...

我用这个:

public void notify(DelegateExecution execution) {
// get value of property mymodel:myproperty
Object assignees = execution.getVariable("bpm_assignees");
}

当我得到 bpm_assignees 时,我得到了这个:

bpm_assignees map value: [Node Type: {alfresco.org/model/content/…}person, Node Aspects: [{alfresco.org/model/content/…}ownable, {alfresco.org/model/system/1.0}referenceable, {alfresco.org/model/system/1.0}localized], Node Type: {alfresco.org/model/content/…}person, Node Aspects: [{alfresco.org/model/content/…}ownable, {alfresco.org/model/system/1.0}referenceable, {alfresco.org/model/system/1.0}localized]]

如何获取用户名

最佳答案

那些对象是 Person NodeRefs。如果您从该节点取回属性,您将获得用户的用户名、电子邮件地址等信息。您可以看到哪些属性可用 by looking at the core content model (向下滚动到 cm:person)

假设返回的对象是一个 ActivitiScriptNodeList , 然后他们会很容易地用访问器等包裹起来,因为他们会是 ActivitiScriptNode秒。那些扩展了普通的 Alfresco JavaScript ScriptNode objects .这意味着您需要做的是:

public void notify(DelegateExecution execution){
ActivitiScriptNodeList assignees = execution.getVariable("bpm_assignees");
for (ActivitiScriptNode personNode : assignees) {
String username = personNode.getProperties().get("cm:userName");
String email = personNode.getProperties().get("cm:email");
// TODO Use this
}
}

关于java - Alfresco - 在工作流程中获取用户名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33798544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com