#aem #aem-6
#aem #aem-6
Вопрос:
Я пытаюсь запустить скрипт в разделенном ИЛИ, и я продолжаю получать ошибку ниже. Согласно этой странице, «graniteWorkItem» включен в список «переменных, которые немедленно доступны для сценариев обработки, обеспечивающих доступ к объектам workflow Java API» (цитируется по ссылке).
наблюдения:
- Я попробовал «WorkItem», который, как я полагаю, является переменной для CQ5? та же ошибка.
- Я удалил разделение OR, а затем вставил шаг динамического участника. В окне выбора участника я выбрал средство выбора участника инициатора рабочего процесса (сценарий). Затем я использовал приведенный ниже код и поставил галочку «электронная почта». Я пробовал имена переменных «WorkItem» и «graniteWorkItem». Я запустил рабочий процесс под другим своим именем и, используя оба имени переменных, получил электронное письмо и никаких ошибок в error.log
Есть идеи, что я делаю не так?
Или с разделенным сценарием (с ошибкой. смотрите ниже)
function check() {
var workflowData = graniteWorkItem.getWorkflowData();
return false;
}
динамический сценарий участника (ошибка с graniteWorkItem в error.log отсутствует)
function getParticipant() {
return graniteWorkItem.getWorkflow().getInitiator();
}
ошибка из error.log
> tail -f error.log | grep -i "graniteWorkItem"
var workflowData = graniteWorkItem.getWorkflowData();
} : Failure running script /libs/workflow/scripts/dynamic.ecma: ReferenceError: "graniteWorkItem" is not defined. (NO_SCRIPT_NAME#2)
org.apache.sling.api.scripting.ScriptEvaluationException: Failure running script /libs/workflow/scripts/dynamic.ecma: ReferenceError: "graniteWorkItem" is not defined. (NO_SCRIPT_NAME#2)
Caused by: org.mozilla.javascript.EcmaError: ReferenceError: "graniteWorkItem" is not defined. (NO_SCRIPT_NAME#2)
var workflowData = graniteWorkItem.getWorkflowData();
com.adobe.granite.workflow.WorkflowException: org.apache.sling.api.scripting.ScriptEvaluationException: Failure running script /libs/workflow/scripts/dynamic.ecma: ReferenceError: "graniteWorkItem" is not defined. (NO_SCRIPT_NAME#2)
Caused by: org.apache.sling.api.scripting.ScriptEvaluationException: Failure running script /libs/workflow/scripts/dynamic.ecma: ReferenceError: "graniteWorkItem" is not defined. (NO_SCRIPT_NAME#2)
Ответ №1:
Я не уверен на 100%, но разве workflowData не доступен в методе check() в любом случае — без извлечения его из рабочего элемента?
Комментарии:
1. Я должен проверить, но workflowData определенно НЕТ в списке переменных. Даже пример на странице, на которую я ссылался, выводит workflowData из graniteWorkItem
2. Да, я знаю. Но все примеры, которые я нашел (в моем локальном экземпляре vanilla AEM) для проверки функций (), напрямую обращаются к workflowData.
3. Где вы нашли примеры? Какой встроенный рабочий процесс? Спасибо