运行Corda流时,收到以下错误:
java.lang.IllegalStateException: No transaction in context
我该如何解决这个问题?
答案 0 :(得分:2)
此问题可能是由于未能使用@Suspendable
注释批注从流内调用的函数。这可以是FlowLogic.call
,也可以是FlowLogic.call
内调用的函数(例如SignTransactionFlow.checkTransaction
,如果您在调用CollectSignaturesFlow
时覆盖此函数)。
如果使用以下命令行标志运行流测试:
-Dco.paralleluniverse.fibers.verifyInstrumentation=true
如果缺失的注释导致错误,则会突出显示该注释。但是,这会减慢测试的运行速度。