3

ワークフローがあります。

最初のステップでは、language という変数を設定します。

WorkflowData data = workItem.getWorkflow().getWorkflowData();
data.getMetaDataMap().put("language", "English");
workflowSession.updateWorkflowData(workItem.getWorkflow(), data);

次は「OR SPLIT」です。ECMA スクリプトで 2 つのブランチがあります。最初のブランチはデフォルトでチェックされ、次のようになります。

function check(){
   var action = workflowData.getMetaDataMap().get("language");
   return (action == "en_US");
}

2番目のブランチには、

function check(){
   return true;
}

フローが最初の分岐を通過すると、正常に機能します。2番目のブランチを通過すると、次のエラーに直面します。

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)

ここに画像の説明を入力

4

1 に答える 1

5

2 番目のブランチに無操作ステップを追加してみましたか?

于 2016-02-24T13:42:40.530 に答える