我需要在alfresco中使用基于java的调度程序查询存储库中的特定文件夹。
我需要检查自定义方面的属性是否存在。
当我不使用路径查询时,以下查询适用于我。
select * from myType:caseDoc as d join myAspect:caseId as s on d.cmis:objectId = s.cmis:objectId
上述查询的问题是它会搜索存储库中的所有内容,但我想定位一个特定的文件夹。
当我尝试将CONTAINS放入上述查询时,它失败了。
select * from cch:caseDoc as d
join cch:caseId as s on d.cmis:objectId = s.cmis:objectId WHERE CONTAINS('PATH:"//app:company_home/cm:FWED/cm:CDO/cm:CAB-DROP-FOLDER/*"')
它给出了以下异常 当有两个或更多选择器
时,必须指定一个选择器谢谢
答案 0 :(得分:1)
看起来你可能在CONTAINS()中缺少一个参数。你尝试过这样的事吗?
select *
from cch:caseDoc as d
join cch:caseId as s
on d.cmis:objectId = s.cmis:objectId
WHERE CONTAINS(d,'PATH:"//app:company_home/cm:FDLE/cm:CCH/cm:CCH-DROP-FOLDER/*"')
(我只是把我的评论作为答案)
答案 1 :(得分:0)
好吧,如果你担心路径,那么你应该把
CONTAINS('PATH:"/app:company_home/cm:FWED/cm:CDO/cm:CAB-DROP-FOLDER/*"')
在路径的开头只有一个/
,如果您只搜索直接子项到该路径,或者:
CONTAINS('PATH:"/app:company_home/cm:FWED/cm:CDO/cm:CAB-DROP-FOLDER//*"')
在整个底层层次结构中执行查找!
但是,我确实认为您提供的查询和您描述的行为彼此不匹配!