对属性和子节点的全文查询无法正常工作-AEM查询生成器

时间:2019-06-11 10:06:38

标签: aem query-builder jcr aem-6 jackrabbit-oak

我正在尝试对6.2 Adob​​e AEM版本的CRX执行查询。

我必须在(aNode是/ content / connect / it / supplier /的通用子节点)上执行全文查询:

1)/ content / connect / it / supplier / aNode / jcr:content的所有属性

2)/ content / connect / it / supplier / aNode / jcr:content / service / legal

所有子节点 在JCR OAK的以下图片中,

以红色突出显示:

enter image description here

要达到我的目标,我已使用AEM查询构建器调试器使用以下查询:

path:/content/connect/it/supplier
orderBy:@jcr:score
p.limit:-1

group.p.or:true
group.1_fulltext:*something to search*
group.1_fulltext.relPath:jcr:content
group.2_fulltext:*something to search*
group.2_fulltext.relPath:jcr:content/service/legal

在jcr:content的属性上搜索“ 要搜索的东西”可以正常工作。

我无法在'jcr:content / service / legal'的子节点上进行搜索。它不检索任何内容。

3 个答案:

答案 0 :(得分:0)

尝试:

path:/content/connect/it/supplier
orderBy:@jcr:score
p.limit:-1

fulltext=*something to search*
group.p.or:true
group.1_relPath:jcr:content
group.2_relPath:jcr:content/service/legal

应该可以。请参阅以下链接:

  1. https://helpx.adobe.com/experience-manager/6-2/sites/developing/using/querybuilder-api.html
  2. http://www.aemcq5tutorials.com/tutorials/adobe-aem-cq5-tutorials/aem-query-builder/

答案 1 :(得分:0)

relPath始终将搜索限制为指定的元素。采用这种方法,您将无法实现目标。您可以删除group.2的relPath,这可能会给您带来太多结果。

答案 2 :(得分:0)

fulltext=something to search
group.p.or=true
group.1_path=/content/connect/it/supplier

这会自动在jcr:content及其下面的子节点中搜索全文。这将满足您搜索jcr:content属性和jcr:content的子节点的目的

如果要搜索多个路径的全文

fulltext=something to search
group.p.or=true
group.1_path=/content/connect/it/supplier
group.2_path=/content/connect/it/xyz