веб-сервер, использующий весенний загрузочный котлин в Corda с XML - PullRequest
0 голосов
/ 28 марта 2019

Я разрабатываю приложение Corda, используя Kotlin. Я на веб-сервере весенней загрузки. Мое требование состоит в том, чтобы получить (почтальон или любой API извне) XML в requestBody и создать IOU (передать) этот xml в том виде, как он есть в Flow, но я не могу этого сделать. когда я определяю это как строку и передаю этот xml, я могу это сделать. но за XML я борюсь. Может кто-нибудь помочь, пожалуйста. Ниже мой код. Я делаю что-то не так здесь. Проблема в том, что я не получаю ошибку, но она просто не работает.

@PostMapping(value = ["createTransaction"],consumes = [MediaType.APPLICATION_XML_VALUE],produces = [ MediaType.TEXT_PLAIN_VALUE])
   private  fun TransactionOne(@RequestBody ()employee:Document, @RequestParam(value = "payload") payload: String, @RequestParam(value = "partyName") partyName: String): ResponseEntity<String> {
       val partyX500Name = CordaX500Name.parse(partyName)
       val otherParty = proxy.wellKnownPartyFromX500Name(partyX500Name) ?: return ResponseEntity.badRequest().body("Party named $partyName cannot be found.\n")
       return try {
           val signedTx = proxy.startTrackedFlow(::IOUFlow, employee, otherParty).returnValue.getOrThrow()
           ResponseEntity.status(HttpStatus.CREATED).body("Transaction id {$signedTx} committed to ledger.\n")

       } catch (ex: Throwable) {
           logger.error(ex.message, ex)
           ResponseEntity.badRequest().body(ex.message!!)
       }
   }

1 Ответ

0 голосов
/ 31 марта 2019

Непонятно, что значит "просто не работает".У вас нет ответа от "startTrackedFlow"?

Что вы видите в журналах ваших узлов?Я думаю, что ответ есть.

Недостаточно информации, чтобы помочь вам ...

...