通过使用fabric-sdk-java客户端我试图调用安装和实例化在同行chaincode我Hyperledger fabric V1.0 network安装在本地的Windows 使用泊坞窗图像。我能够调用和查询链码到对等peer0.org1.example.com,但是当我试图同向同行peer0.org2.example.com收到以下错误使用织物客户端SDK,无法使GRPC调用多个对
2017-09-13 13:22:45,382 main ERROR Channel:2241 - Sending proposal to peer0.org2.example.com failed because of: gRPC failure=Status{code=UNAVAILABLE, description=Channel closed while performing protocol negotiation, cause=null}
java.lang.Exception: io.grpc.StatusRuntimeException: UNAVAILABLE: Channel closed while performing protocol negotiation
at org.hyperledger.fabric.sdk.Channel.sendProposalToPeers(Channel.java:2241)
at org.hyperledger.fabric.sdk.Channel.sendProposal(Channel.java:2155)
at org.hyperledger.fabric.sdk.Channel.sendTransactionProposal(Channel.java:2089)
at com.ibs.blockchain.client.utility.BlockChainUtility.sendProposal(BlockChainUtility.java:232)
at com.ibs.blockchain.client.utility.BlockChainUtility.createFlight(BlockChainUtility.java:80)
at com.ibs.blockchain.client.test.BCAPITest.main(BCAPITest.java:9)
Caused by: io.grpc.StatusRuntimeException: UNAVAILABLE: Channel closed while performing protocol negotiation
at io.grpc.Status.asRuntimeException(Status.java:526)
at io.grpc.stub.ClientCalls$UnaryStreamToFuture.onClose(ClientCalls.java:427)
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:419)
at io.grpc.internal.ClientCallImpl.access$100(ClientCallImpl.java:60)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.close(ClientCallImpl.java:493)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.access$500(ClientCallImpl.java:422)
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:525)
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:102)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
展望搬运工-compose.yaml端口映射是像
peer0.org1.example.com
ports:
- 7051:7051
- 7053:7053
peer0.org2.example.com
ports:
- 8051:7051
- 8053:7053
它与对等体仅具有工作的端口相同的TCP端口()但得到上述错误无线对方有不同的端口。为什么?
请澄清问题。在8051:7051表示法中,8051是“外部”可到达端口,而7051是泊坞窗图像中的匹配端口。此外,“UNAVAILABLE:Channel”错误似乎表明您在结构频道名称中存在对方加入某处的拼写错误,请仔细检查?。 –
哦,你是对的。我正在使用左侧的端口(7051),而不是您提到的“外部”可到达端口。问题与我的理解。:)现在它的工作后,用“外部”可达端口替换7051。感谢您的评论:) – Girish007
@Bertrand_Szoghy请将此添加为答案 –