2016-03-16 2 views
1

Это ошибка, которую я получаю.Как найти узел в JCR с помощью uuid из запроса

16.03.2016 12: 02: 16,413 WARN [xxx.xxx.xx.xxx [1458147736268] GET/EN/сотрудников-руководителей/сотрудников-toolkit2/EPD-обновления/EPD-update- архивы/caterpillar-news/предстоящий-brand-webinarfocusonmarketing.html HTTP/1.1] com.day.cq.wcm.core.impl.LanguageManagerImpl Ошибка, пока извлекает языковое свойство. javax.jcr.AccessDeniedException: не может пункта чтения ХХХХХХХХХХОГО-XXXXXXXX-ХХХХХХХХХХХХ (буквенно-цифровой)

Я пытаюсь найти узел в JCR, используя ХХХХХХХХХХХЙ-XXXXXXXX-XXXXXXXXXXXX , который я считаю uuid, используя запрос в AEM.

  • Действительно ли xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx действительно является uuid?
  • Как найти источник i.e, вызвав проблему?

Я попытался запустить sql с указанным выше id в jcr, но он не дал никакого результата.

//*[jcr:contains(., '91186155-45ad-474-9ad9-d5156a398629')] order by @jcr:score descending 

Любые другие идеи были бы высоко оценены.

ответ

5

Вам не нужен запрос, если вы знаете UUID узла, просто используйте метод Session.getNodeByIdentifier(String id).

+0

Это выглядит многообещающе. Так как я пытаюсь устранить неполадки, есть ли способ запустить этот метод в консоли какого-либо типа в JCR (аналогично инструментам dev)? или он должен быть закодирован и скомпилирован? Благодарю. –

+0

Вы можете запускать код непосредственно на сервере с помощью AEM Fiddle из библиотеки инструментов ACS: http://adobe-consulting-services.github.io/acs-aem-tools/features/aem-fiddle.html – nateyolles

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'

Что прочитать permissi у вас есть учетная запись? Вы найдете много результатов для запроса jcr:uuid будет ниже /jcr:system/jcr:versionStorage.

+0

Я побежал обоих. Но результаты пустые, заставляя меня думать, что это не uuid. У меня есть доступ администратора. –

0

Используйте QueryBuilderDebugger (локальный: 4502/ЛИЭС/сд/поиск/содержание/querydebug.html) и запустить подобный запрос, как показано ниже, чтобы получить узел для данного UUID:

property=jcr:uuid 
property.value=e69b256e-a466-3730-866b-de22c82ab8ck 
path=/home 
type=rep:Group 
p.limit=10 
Смежные вопросы