如何从Alfresco中的父nodeRef获取关联子nodeRef

时间:2014-03-29 12:08:48

标签: alfresco

我引用此link但它对我不起作用......

以下代码不起作用:

String query = "PATH:\"/app:company_home/cm:Customer_Relationship_Management/cm:Business_Documents/cm:Orders/*\"+@crm\\:uniqueDocId:\"" + orderId + "\"";
            List<NodeRef> nodeRefs = CRMUtils.executeLuceneQuery(query);

NodeRef parentRef = nodeRefs.get(0);

List<ChildAssociationRef> childRef = AlfrescoServiceRegistry.getServiceRegistry().getNodeService().getChildAssocs(parentRef, ContentModel.ASSOC_CONTAINS, RegexQNamePattern.MATCH_ALL);

当我调试这段代码时,我得到了parentRef及其正确但后面的行我得到了空的childRef ...

如果您有任何其他解决方案,那么请帮助我......

2 个答案:

答案 0 :(得分:1)

尝试以下NodeService方法:

getSourceAssocs(NodeRef nodeRef, QNamePattern qnamePattern) or 
getTargetAssocs(NodeRef nodeRef, QNamePattern qnamePattern) 

这可以解决您的问题。

答案 1 :(得分:0)

您孩子协会的名称是什么? getChildAssocs(NodeRef nodeRef, QNamePattern typeQNamePattern, QNamePattern qnamePattern)中的第二个参数反映了关联qname。也许你的孩子关联qname不是ContentModel.ASSOC_CONTAINS?