0

使用 Javascript Webscript,我可以使用以下代码获取组节点:

var group = People.getGroup(groupname);

这段代码的 Java 支持的等价物是什么?

到目前为止,我只能获得一组所有组名,但我希望能够遍历该组并获得实际的组节点。

//Gets all groups, but only as a set of groupnames
Set<String> groups = new HashSet<String>();
groups.addAll(authorityService.getAllAuthorities(AuthorityType.GROUP));
for (String groupname : groups) {
  //jscript equivalent - var group = People.getGroup(groupname);
}
4

2 回答 2

0

您可以使用该org.alfresco.repo.security.authority.AuthorityDAO getAuthorityNodeRefOrNull方法通过名称获取组节点。

不幸的是,AuthorityDAO 没有提供获取所有组节点的方法,但是如果您查看它的实现代码 org.alfresco.repo.security.authority.AuthorityDAOImpl,您将能够轻松复制执行此操作的代码,它不是很复杂。

于 2010-01-16T16:09:06.553 回答
0

即将推出一个新的 AuthorityService 方法,它将为您提供给定组的 noderef:

/**
 * Gets the authority node for the specified name
 * 
 * @param name The authority name
 *  
 * @return the reference to the authority node
 */
public NodeRef getAuthorityNodeRef(String name);

虽然它不在 Alfresco 的已发布版本中,所以现在您需要按照 Hugo 的建议从 AuthorityDAO 调用 getAuthorityNodeRefOrNull。

于 2011-03-31T23:03:47.590 回答