反序列化事件创建者失败:[预期的 MSP ID Org2MSP,收到 Org1MSP] 在 hyperledger 中启动休息服务器时

failed deserializing event creator: [Expected MSP ID Org2MSP, received Org1MSP] while starting rest server in hyperledger

我已经在 fabric 中设置了多通道。我正在使用 composer 在 fabric 中执行事务。 我的 network.Each 频道中有 4 个频道,其中包含 3 个组织。当我 运行 network_setup.sh 时,它会启动与所有组织的结构网络。然而,当我是 运行 composer-rest-server 时,它给了我以下错误:

2018-01-06 09:32:32.278 UTC [eventhub_producer] Chat -> ERRO 14e1 error during Chat, stopping handler: rpc error: code = Canceled desc = context canceled 2018-01-06 09:33:09.703 UTC [eventhub_producer] validateEventMessage -> DEBU 14e2 ValidateEventMessage starts for signed event 0xc4218f2a80 2018-01-06 09:33:09.703 UTC [eventhub_producer] Chat -> ERRO 14e3 Error handling message: event message must be properly signed by an identity from the same organization as the peer: [failed deserializing event creator: [Expected MSP ID Org2MSP, received Org1MSP]]

有人可以帮忙解决这个问题吗?

首先,我认为线索在您发布的错误中。它说 'Expected MSP ID Org2MSP, received Org1MSP] ' - 因此我怀疑您作为业务网络卡的一部分创建的连接配置文件信息需要更新以反映正确的 MSP -(您已经构建了适当的卡文件并导入了它们,例如 PeerAdmin 卡?)

如多组织教程 https://hyperledger.github.io/composer/tutorials/deploy-to-fabric-multi-org.html 所示,您将需要一个 Org1 的配置文件和一个单独的 Org1 配置文件来包含来自 'other Orgs' 的信息(因此将包含关于他们的同行的信息)该渠道/使用该渠道上的业务网络(即您定义的任何渠道 - 在我们的例子中是 4 个中的第一个) - 然后,进一步向下,这同样适用于组织 1、2 和 3 中的每一个)。所以你的第一个停靠点是详细检查你的连接配置文件信息(多组织教程是一个很好的起点,展示了你如何连接来自其他组织的对等信息,'org2' in org 1's profile -特别针对 connection-org1.json 示例配置文件(即该教程的 'Step 3' 中显示的第二个配置文件)。它显示了 'this Orgs' 同级和多组织中“其他成员的同级”的要求profile.. 除此之外,可能是 Fabric crypto (cryptogen) 配置没有为您的自定义多组织设置正确设置。另请参阅此处的 answer 了解更多信息; Hyperledger Composer BNA deployment results in 'TCP write failed'