这是我得到的错误。
16.03.2016 12:02:16.413 WARN [xxx.xxx.xx.xxx [1458147736268] GET / zh -cn-employees-leaders / employee-s-toolkit2 / epd-update / epd- update-archives / caterpillar-news / coming-brand-webinarfocusonmarketing.html HTTP / 1.1] com.day.cq.wcm.core.impl.LanguageManagerImpl Error while 检索语言属性。 javax.jcr.AccessDeniedException:不能 读取项目xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx(字母数字)
我正在尝试使用xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx在JCR中找到节点,我认为这是uuid,使用AEM中的查询。
我尝试在jcr中运行带有上述id的sql,但是没有返回任何结果。
//*[jcr:contains(., '91186155-45ad-474-9ad9-d5156a398629')] order by @jcr:score descending
非常感谢任何其他见解。
答案 0 :(得分:5)
如果您知道Node的UUID,则不需要查询,只需使用Session.getNodeByIdentifier(String id)方法。
答案 1 :(得分:1)
你的查询不是你所说的SQL,它是XPATH。这是一个错字还是你错误地运行了查询?
它看起来像UUID。您可以查询jcr:uuid
属性,也可以继续进行全文搜索。
XPATH:
/jcr:root//*[jcr:contains(., '91186155-45ad-474-9ad9-d5156a398629')]
/jcr:root//*[@jcr:uuid='91186155-45ad-474-9ad9-d5156a398629']
JCR-SQL2:
SELECT * FROM [nt:base] AS s WHERE contains(s.*, '91186155-45ad-474-9ad9-d5156a398629')
SELECT * FROM [nt:base] WHERE [jcr:uuid] = '91186155-45ad-474-9ad9-d5156a398629'
您的帐户拥有哪些读取权限?您将在jcr:uuid
下找到/jcr:system/jcr:versionStorage
查询的大量结果。
答案 2 :(得分:0)
使用QueryBuilderDebugger,(localhost:4502 / libs / cq / search / content / querydebug.html)并运行如下的类似查询以获取给定uuid的节点:
property=jcr:uuid
property.value=e69b256e-a466-3730-866b-de22c82ab8ck
path=/home
type=rep:Group
p.limit=10