这只发生在M14 - 我有签名的交易stx。首先,我发送一个方面的sendAndReceive(anotherParty,stx),让他们有机会验证事务的完整性和verifySignaturesExcept(notaryPubKey)。然后我运行subFlow(FinalityFlow(stx)),并且FinalityFlow因SignatureException而失败。但是如果我使用像subFlow这样的克隆(FinalityFlow(stx.copy()),它可以正常工作。 BTW,sendAndReceive(anotherParty,stx.copy())和subFlow(FinalityFlow(stx))都不好。
为什么?
\肖恩
答案 0 :(得分:0)
这里最好的方法是在MockNetwork的测试中复制问题(请参阅此处的一些基本示例:https://github.com/corda/cordapp-tutorial/blob/master/kotlin-source/src/test/kotlin/com/example/flow/IOUFlowTests.kt)。
一旦你在MockNetwork上复制了这个问题,就可以很容易地使用调试器,如果在调用FinalityFlow
时缺少任何签名,就可以解决问题。