Я хочу создать транзакцию с собственным узлом, используя corda 4.0.
Я использовал для этого пример примера ввода-вывода и добавил свои изменения в ExampleFlow, как показано в приведенном ниже коде.https://github.com/corda/cordapp-example/tree/release-V4/java-source.
Но это не позволяет создать транзакцию с собственным узлом.
также я следовал / реализовал ответы из этого Corda 4 - односторонняя транзакция не удалось зафиксироватьв книгу
, но это не сработало.
Я внес только изменения в ExampleFlow, как показано ниже / Остальная часть кода из примера iOU такая же.
Пожалуйстапомощь.
@Suspendable
override fun call(): SignedTransaction {
// Obtain a reference to the notary we want to use.
val notary = serviceHub.networkMapCache.notaryIdentities[0]
// Stage 1.
progressTracker.currentStep = GENERATING_TRANSACTION
// Generate an unsigned transaction.
val iouState = IOUState(iouValue, serviceHub.myInfo.legalIdentities.first(), otherParty)
val txCommand = Command(IOUContract.Commands.Create(), listOf(ourIdentity.owningKey))
val txBuilder = TransactionBuilder(notary)
.addOutputState(iouState, IOU_CONTRACT_ID)
.addCommand(txCommand)
// Stage 2.
progressTracker.currentStep = VERIFYING_TRANSACTION
// Verify that the transaction is valid.
txBuilder.verify(serviceHub)
// Stage 3.
progressTracker.currentStep = SIGNING_TRANSACTION
// Sign the transaction.
val partSignedTx = serviceHub.signInitialTransaction(txBuilder)
// Stage 5.
progressTracker.currentStep = FINALISING_TRANSACTION
// Notarise and record the transaction in both parties' vaults.
return subFlow(FinalityFlow(partSignedTx,emptyList()))
}