【问题标题】:How do fetch the state with custome query? Corda application using Spring boot webserver- error while fetching the result如何使用自定义查询获取状态? Corda 应用程序使用 Spring Boot Web 服务器 - 获取结果时出错
【发布时间】:2019-08-23 09:01:37
【问题描述】:

我在corda应用程序中创建了IOU,IOU有ID,body中的xml有效负载,partyName。现在,我想使用基于 ID 的客户查询来获取状态。注意 - 我没有使用线性 ID。

下面是我的 API 调用——它给了我语法错误。有人可以纠正我,我做错了什么。

@GetMapping(value = ["getIous"],produces = [ MediaType.APPLICATION_JSON_VALUE])
    private fun getTransactionOne(@RequestParam(value = "payloadId") payloadId: String): ResponseEntity<List<IOUState>> {
        val generalCriteria = QueryCriteria.VaultQueryCriteria(Vault.StateStatus.ALL)
        val results = builder { IOUState::iouId.equal(payloadId)
            val customCriteria = QueryCriteria.VaultCustomQueryCriteria(results)}

            val criteria = customCriteria.and(customCriteria)

            val res = proxy.vaultQueryBy<IOUState>(criteria)
            return ResponseEntity.ok(res)
    }

【问题讨论】:

  • 哪一行出现语法错误?
  • Line1- val customCriteria = QueryCriteria.VaultCustomQueryCriteria(results)} Line2- val criteria = customCriteria.and(customCriteria), Line3- return ResponseEntity.ok(res)

标签: spring spring-boot kotlin corda


【解决方案1】:

我认为问题在于 VaultCustomQueryCriteria 仅适用于 StatePersistable 对象。所以你应该使用PersistentIOU 而不是IOUState。此外,我可以看到不正确使用括号。以下是您的代码的外观:

@GetMapping(value = ["getIous"],produces = [ MediaType.APPLICATION_JSON_VALUE])
private fun getTransactionOne(@RequestParam(value = "payloadId") payloadId: String): ResponseEntity<List<IOUState>> {
        val generalCriteria = QueryCriteria.VaultQueryCriteria(Vault.StateStatus.ALL)
        val results = builder {
            val idx = IOUSchemaV1.PersistentIOU::iouId.equal(payloadId);
            val customCriteria = QueryCriteria.VaultCustomQueryCriteria(idx)
            val criteria = generalCriteria.and(customCriteria)
            proxy.vaultQueryBy<IOUState>(criteria);
        }
        return ResponseEntity.ok(results)
}

【讨论】:

    猜你喜欢
    • 2022-11-02
    • 2020-02-04
    • 1970-01-01
    • 2021-01-14
    • 1970-01-01
    • 2014-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多