首页 > 解决方案 > fabric-java-sdk 中的服务发现

问题描述

我正在运行服务发现来调用事务。我收到此错误。我正在使用fabric-sdk-java v1.4.0。

我已经设定CORE_PEER_GOSSIP_EXTERNALENDPOINT as peer_name:port

Chaincode.org.hyperledger.fabric.sdk.exception.ServiceDiscoveryException: Failed to find and endorsers for chaincode fabcar.

同样在 grpc 日志中,我反复收到以下警告。

WARNING: [io.grpc.internal.ManagedChannelImpl-965] Failed to resolve name. status=Status{code=UNAVAILABLE, description=NameResolver returned an empty list, cause=null}
Mar 01, 2019 11:37:51 AM io.grpc.internal.ManagedChannelImpl$NameResolverListenerImpl onError

织物-SDK-Java 日志

[pool-5-thread-1] INFO org.hyperledger.fabric.sdk.ServiceDiscovery - Channel mychannel doing discovery with peer: Peer{ id: 3, name: pr1, channelName: mychannel, url: grpc://10.80.102.129:8051}
[pool-5-thread-1] ERROR org.hyperledger.fabric.sdk.ServiceDiscovery - Error failed constructing descriptor for chaincodes:<name:"fabcar" > 
[pool-5-thread-1] WARN org.hyperledger.fabric.sdk.ServiceDiscovery - Channel mychannel failed to find all layouts for chaincodes. Expected: 1 and found: 0
[grpc-default-executor-21] WARN org.hyperledger.fabric.sdk.PeerEventServiceClient - Received error on  PeerEventServiceClient{id: 8360, channel: mychannel, peerName: pr1:7051, url: grpc://pr1:7051}, attempts 8351. UNAVAILABLE: Unable to resolve host pr1
[grpc-default-executor-21] WARN org.hyperledger.fabric.sdk.PeerEventServiceClient - Received error on  PeerEventServiceClient{id: 8410, channel: mychannel, peerName: pr1:7051, url: grpc://pr1:7051}, attempts 8401. UNAVAILABLE: Unable to resolve host pr1

什么可能是错的?

标签: hyperledger-fabric

解决方案


您需要将您的对等方添加到您的/etc/hosts/文件中。

就您而言,我认为您应该添加以下行:

10.80.102.129 pr1


推荐阅读