无法理解 AEM 工作流程中的 "OR split"
Failing to understand "OR split" in AEM workflow
我有一个工作流程。
在第一步中,它设置了一个名为语言的变量。
WorkflowData data = workItem.getWorkflow().getWorkflowData();
data.getMetaDataMap().put("language", "English");
workflowSession.updateWorkflowData(workItem.getWorkflow(), data);
接下来是"OR SPLIT",它有2个带有ECMA脚本的分支
默认检查第一个分支并具有以下
function check(){
var action = workflowData.getMetaDataMap().get("language");
return (action == "en_US");
}
第二家只有,
function check(){
return true;
}
当流程通过第一个分支时,它工作正常。
如果它通过第二个分支,我将面临以下错误。
com.adobe.granite.workflow.WorkflowException: No route found to continue from step node1 in model /etc/workflow/models/example/jcr:content/model. Probably a configuration error.
at com.adobe.granite.workflow.core.WorkflowSessionImpl.getRoutes(WorkflowSessionImpl.java:734)
at com.adobe.granite.workflow.core.job.HandlerBase.complete(HandlerBase.java:497)
at com.adobe.granite.workflow.core.job.JobHandler.process(JobHandler.java:336)
at org.apache.sling.event.impl.jobs.JobConsumerManager$JobConsumerWrapper.process(JobConsumerManager.java:512)
at org.apache.sling.event.impl.jobs.queues.JobRunner.run(JobRunner.java:205)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
你试过在第二个分支中添加一个无操作步骤吗?
我有一个工作流程。
在第一步中,它设置了一个名为语言的变量。
WorkflowData data = workItem.getWorkflow().getWorkflowData();
data.getMetaDataMap().put("language", "English");
workflowSession.updateWorkflowData(workItem.getWorkflow(), data);
接下来是"OR SPLIT",它有2个带有ECMA脚本的分支 默认检查第一个分支并具有以下
function check(){
var action = workflowData.getMetaDataMap().get("language");
return (action == "en_US");
}
第二家只有,
function check(){
return true;
}
当流程通过第一个分支时,它工作正常。 如果它通过第二个分支,我将面临以下错误。
com.adobe.granite.workflow.WorkflowException: No route found to continue from step node1 in model /etc/workflow/models/example/jcr:content/model. Probably a configuration error.
at com.adobe.granite.workflow.core.WorkflowSessionImpl.getRoutes(WorkflowSessionImpl.java:734)
at com.adobe.granite.workflow.core.job.HandlerBase.complete(HandlerBase.java:497)
at com.adobe.granite.workflow.core.job.JobHandler.process(JobHandler.java:336)
at org.apache.sling.event.impl.jobs.JobConsumerManager$JobConsumerWrapper.process(JobConsumerManager.java:512)
at org.apache.sling.event.impl.jobs.queues.JobRunner.run(JobRunner.java:205)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
你试过在第二个分支中添加一个无操作步骤吗?