Наблюдатель повторяет выдачу денежных результатов в сообщение об ошибке «java.util.NoSuchElementException: Коллекция не содержит элемента, соответствующего предикату». - PullRequest
0 голосов
/ 30 ноября 2018

У меня настроена сетевая сеть, как показано ниже:

2 банковских узла

1 Центральный банк (наблюдатель)

1 нотариус

Я выдал наличныеот ЦБ до каждого узла банка.Для выдачи наличных используется «CashIssueAndPaymentFlow».Я также могу выдавать наличные на один и тот же узел несколько раз.

Затем попробуйте выполнить транзакцию с одного банковского узла на другой банковский узел, где Центральный банк является наблюдателем.

После завершения транзакции, когда я пытаюсь выдатьДенежные средства в любые банковские узлы выдают следующее сообщение об ошибке:

java.util.NoSuchElementException: Collection contains no element matching the predicate.
        at net.corda.node.services.keys.PersistentKeyManagementService.getSigningKeyPair(PersistentKeyManagementService.kt:110) ~[corda-node-3.3-corda.jar:?]
        at net.corda.node.services.keys.PersistentKeyManagementService.sign(PersistentKeyManagementService.kt:101) ~[corda-node-3.3-corda.jar:?]
        at net.corda.core.transactions.TransactionBuilder.toSignedTransaction(TransactionBuilder.kt:224) ~[corda-core-3.3-corda.jar:?]
        at net.corda.core.node.ServiceHub$DefaultImpls.signInitialTransaction(ServiceHub.kt:219) ~[corda-core-3.3-corda.jar:?]
        at net.corda.core.node.ServiceHub$DefaultImpls.signInitialTransaction(ServiceHub.kt:233) ~[corda-core-3.3-corda.jar:?]
        at net.corda.node.services.api.ServiceHubInternal$DefaultImpls.signInitialTransaction(ServiceHubInternal.kt) ~[corda-node-3.3-corda.jar:?]
        at net.corda.node.internal.AbstractNode$ServiceHubInternalImpl.signInitialTransaction(AbstractNode.kt:836) ~[corda-node-3.3-corda.jar:?]
        at net.corda.core.node.ServiceHub$DefaultImpls.signInitialTransaction(ServiceHub.kt:255) ~[corda-core-3.3-corda.jar:?]
        at net.corda.node.services.api.ServiceHubInternal$DefaultImpls.signInitialTransaction(ServiceHubInternal.kt) ~[corda-node-3.3-corda.jar:?]
        at net.corda.node.internal.AbstractNode$ServiceHubInternalImpl.signInitialTransaction(AbstractNode.kt:836) ~[corda-node-3.3-corda.jar:?]
        at net.corda.finance.flows.CashPaymentFlow.call(CashPaymentFlow.kt:66) ~[corda-finance-3.3-corda.jar:?]
        at net.corda.finance.flows.CashPaymentFlow.call(CashPaymentFlow.kt:26) ~[corda-finance-3.3-corda.jar:?]
        at net.corda.core.flows.FlowLogic.subFlow(FlowLogic.kt:290) ~[corda-core-3.3-corda.jar:?]
        at net.corda.finance.flows.CashIssueAndPaymentFlow.call(CashIssueAndPaymentFlow.kt:41) ~[corda-finance-3.3-corda.jar:?]
        at net.corda.finance.flows.CashIssueAndPaymentFlow.call(CashIssueAndPaymentFlow.kt:24) ~[corda-finance-3.3-corda.jar:?]
        at net.corda.node.services.statemachine.FlowStateMachineImpl.run(FlowStateMachineImpl.kt:96) [corda-node-3.3-corda.jar:?]
        at net.corda.node.services.statemachine.FlowStateMachineImpl.run(FlowStateMachineImpl.kt:44) [corda-node-3.3-corda.jar:?]
        at co.paralleluniverse.fibers.Fiber.run1(Fiber.java:1092) [quasar-core-0.7.9-jdk8.jar:0.7.9]
        at co.paralleluniverse.fibers.Fiber.exec(Fiber.java:788) [quasar-core-0.7.9-jdk8.jar:0.7.9]

Проще говоря, денежные средства выдаются из Центрального банка и также сохраняют Центральный банк в качестве наблюдателя.После нескольких транзакций, попробуйте снова выдать наличные деньги. Вышеуказанная ошибка.

Версия Corda, используемая для вышеприведенной вещи, - V3.3.

Предоставить некоторые рекомендации по этому поводу.

...