我有一个带有属性pageID的JCR节点。 pageID的值为" 123"在节点中。我使用以下查询使用pageID propery搜索页面。
queryMap.put("path" , "/content/mysite/pages");
queryMap.put("property" , "pageID");
queryMap.put("property.1_value" , "123");
在AEM中执行此查询时,我没有得到任何结果,因为属性值在JCR节点中有一个额外的空格(" 123")。
答案 0 :(得分:0)
不确定我们是否可以在搜索过程中忽略此空格,但可以建议您下一个查询参数:
path=/content/mysite/pages
property=pageID
property.operation=like
property.value=123_
查询生成器的这个参数等于下一个xpath查询:
/jcr:root/content/mysite/pages//*
[
jcr:like(@pageID, '123_')
]
_
代表一个任何符号。因此,此查询将查找具有属性值的节点,如'123','123f'等。因此,此查询不会只找到'123'。
此外,您可以使用代表零或更多符号的_
代替%
。
在这两种情况下,您都应该对结果进行后处理(以删除'123f'等条目。