我想在特定路径下找到一个资产,其名称类似于'%xyz%'。 我提到了这个页面"9 JCR Queries every AEM developer should know"
请参阅第7点。它明确指出我可以使用Name() Like '%xyz%'
APPROACH 1
所以我解雇了一个查询
String jcrQuery = "SELECT * FROM [dam:Asset] WHERE NAME() LIKE '%"+conditionalSelectString+"%'";
然后我去javax.jcr.UnsupportedRepositoryOperationException
。
方法2 我用CQ5找到了这个惊人的页面,可以帮助你构建JCR-SQL2查询 http://localhost:4502/crx/explorer/ui/search.jsp
所以借助于此我生成了查询
select * from dam:Asset where jcr:path like '/content/dam/pdf/%' and contains(*, '%Slide%')
当我在CQ5的search.jsp页面上触发此查询时,此工作正常。但是当我尝试在我的包中的类中触发此查询时,我得到一个异常
那么如何使用like而非名称来触发按名称搜索DAM Asset的查询。我知道 NAME 可用于查找完全匹配的节点。
如何一起使用名称和喜欢?