尝试检索特定路径下的文件夹/文件的CMIS查询未返回任何文档

时间:2018-12-10 21:34:59

标签: java lucene alfresco cmis opencmis

问候社区!我正在使用alfresco community edition 6.0.0,但遇到一个非常奇怪的问题。我正在使用Java API通过运行CMIS查询来访问我的露天仓库。我使用cmis-strict成功获取了文档,如下所示:

示例1)

select * from cmis:document WHERE cmis:name like '%doc%' AND  cmis:objectId =  'e318a431-0ff4-4a4a-9537-394d2bd761af' "

示例2)

SELECT * FROM cmis:document WHERE IN_FOLDER('63958f9c-819f-40f4-bedf-4a2e402f8b9f') AND cmis:name like '%temp%'

完美运行,我想做的是在特定路径下检索文件/文件夹( fetch / app:company_home / app:user_homes 下的所有文件夹)

我正在从alfresco的节点浏览器运行以下cmis-strict查询

SELECT * FROM cmis:folder WHERE CONTAINS('PATH:"//app:company_home/app:user_homes//*"')

即使该目录下已有文件夹,也不会返回。似乎无法识别PATH参数,就像我运行查询时一样 SELECT * FROM cmis:folder我得到许多以

为父项的结果
app:company_home/app:user_homes 

节点

任何想法可能是什么问题?任何帮助将不胜感激,谢谢:)

编辑:

我也尝试使用

这样的Lucene查询
PATH:"/app:company_home/app:user_homes//*") but no results returned too

2 个答案:

答案 0 :(得分:2)

您的用户家园在5.2和6.1.1中都对我有用。

我喜欢@Lista建议检查您的索引。如果那没有结果,则可以获取用户homes文件夹的CMIS对象ID,然后将其与已经证明有效的IN_FOLDER子句一起使用。

答案 1 :(得分:1)

我认为Lucene和CMIS查询(如果使用CONTAINS)都以索引(而不是数据库)结尾,因此,假设索引本身有问题是不奇怪的。您是否尝试过重建它们?您的节点是否还在索引中(可以使用SOLR管理控制台来查看)?

https://docs.alfresco.com/6.0/concepts/query-lang-support.html