1

我正在使用流框架编写 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();

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

4

1 回答 1

1

getDecisionContext()当您在工作流之外调用它时会引发此异常(它应该只在您的工作流实现的调用层次结构中的某处被调用 - 即,您的WorkflowImpl)。

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

于 2014-10-14T23:11:43.127 回答