当由于各种原因导致多方流程无法完成时,推荐异常的推荐方法是什么?在抛出一个包含与其他方共享的消息的FlowException时,我更愿意提供与它们相关的数据,仅此而已。此外,我希望能够在当前的一方抛出一个不同的例外或采取一些其他行动(超过记录错误),为他们提供与自身相关的信息,包括他们认为来自网络的私人信息。 。
我在话语论坛上发现了一些有用的对话,以及来自Corda文档的以下文档。但是,查看corda版本-M14代码中的一些流程(TwoPartyTradeFlow,TwoPartyDealFlow,现金流)并没有对我的上述问题产生任何有用的见解。你能否对此有所了解?
https://docs.corda.net/api-flows.html#flowexception
https://discourse.corda.net/t/flow-exception-handling/599/3
答案 0 :(得分:0)
FlowException
是标准异常类型。因此,您可以包含可能会在FlowException
/ try
块中抛出catch
的操作,然后仅使用您要提供给对方的信息重新抛出它。每一方都可以实施try
/ catch
来重新抛出他们希望分享的信息。
或者,我认为重新抛出正常异常而不是FlowException
,除了流量意外终止之外,不会向对方发送任何信息。