【问题标题】:How to pass map parameter in corda flow start command如何在corda flow start命令中传递map参数
【发布时间】:2020-09-02 22:31:28
【问题描述】:

flow start TransactionRecoveryFlow report: {O=PartyB, L=New York, C=US=LedgerSyncFindings(missingAtRequester=[24DC1B1C6D8743988C5F4DE6725C64D4354B713D78F27E60CF03398B32657D57, FD3F0A5D8E03A9E8B79229B8271DCEDA691AE106A99F38E5F9F0408FB1F1BAFA, A997737DC3359FE7F3D15CB06E12EF347DA149328F263D2B35F99DA8F363EFCB], missingAtRequestee=[])}

我正在尝试通过命令行传递报告参数,这是一个类型为 "Map" 的地图。如何从命令行向它传递值。

我在输出中遇到多个语法错误。

exception: while parsing a flow mapping in 'reader', line 1, column 11: { report: {O=PartyB, L=New York, C=US=Ledg ... ^ expected ',' or '}', but got [ in 'reader', line 1, column 77: ... SyncFindings(missingAtRequester=[24DC1B1C6D8743988C5F4DE6725C64D ... ^ at [Source: (StringReader); line: 1, column: 77] - while parsing a flow mapping in 'reader', line 1, column 11: { report: {O=PartyB, L=New York, C=US=Ledg ... ^ expected ',' or '}', but got [ in 'reader', line 1, column 77: ... SyncFindings(missingAtRequester=[24DC1B1C6D8743988C5F4DE6725C64D ... ^ at [Source: (StringReader); line: 1, column: 77] - while parsing a flow mapping in 'reader', line 1, column 11: { report: {O=PartyB, L=New York, C=US=Ledg ... ^ expected ',' or '}', but got [ in 'reader', line 1, column 77: ... SyncFindings(missingAtRequester=[24DC1B1C6D8743988C5F4DE6725C64D ... ^ [errorCode=1eyuahe, moreInformationAt=https://errors.corda.net/OS/4.5/1eyuahe]

【问题讨论】:

  • 你遇到了什么错误?
  • @AlessandroBaffa 在问题中添加了语法错误。我什至尝试将 '=' 替换为 ':' 但这种格式仍然不正确。如果我知道如何在参数中传递地图,那么我可以解决这个问题。

标签: corda


【解决方案1】:

根据this answerlist 是这样传递的:

flow start MyFlow listParam: [value1, value2]

按照上述方法,map 应该像这样传递:

flow start MyFlow mapParam: [key1:value1, key2:value2]

在您的代码示例中,您缺少地图周围的方括号 [ ],以及键/值对之间的冒号 :

另外,请注意在 shell 中传递对象的方式(请参阅here)。

【讨论】:

    猜你喜欢
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 2011-08-22
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多