AWS SWF - IllegalStateException:未找到上下文。 (在工作流定义之外调用的方法)

时间:2014-10-08 11:32:57

标签: amazon-web-services flash amazon-swf

我正在使用流程框架编写AWS SWF应用程序。在调用以下代码时获取IllegalStateException: No context Found. It means that the method is called outside of the workflow definition code.

private DecisionContextProvider contextProvider
     = new DecisionContextProviderImpl();

private WorkflowClock clock
     = contextProvider.getDecisionContext().getWorkflowClock();

为什么我会收到此错误以及如何摆脱它?

1 个答案:

答案 0 :(得分:1)

当您在工作流程之外调用它时,getDecisionContext()抛出此异常(它只应在工作流实现的调用层次结构中的某个位置调用 - 即WorkflowImpl)。

为避免出现该错误,您只应在工作流程或其构造函数内部调用getDecisionContext()。该对象仅在这些情况下(通过简单的工作流框架)设置,并且在工作流执行之外不存在,因此IllegalStateException