Tools, FAQ, Tutorials:
Invoke Chaincode Transaction on BYFN Channel
How to Invoke Chaincode Transaction on BYFN Channel?
✍: FYIcenter.com
An instance of a chaincode can be viewed as an object
of a class in an execution environment.
It can hold transaction operations to manage its properties.
You can run the "peer chaincode invoke" command to invoke the "Invoke" operation of a given chaincode instance.
1. Verify instantiated chaincode:
$ docker exec -it cli bash bash-4.4# echo $CORE_PEER_ADDRESS peer0.org2.example.com:7051 bash-4.4# peer chaincode list -C mychannel --instantiated Get instantiated chaincodes on channel mychannel: Name: mycc, Version: 1.0, Path: github.com/chaincode/chaincode_example02/go/, \ Escc: escc, Vscc: vscc
2. Invoke chaincode instance to transfer 10 from property:
bash-4.4# peer chaincode invoke -o orderer.example.com:7050 --tls true \
--cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto\
/ordererOrganizations/example.com/orderers/orderer.example.com/msp\
/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc \
--peerAddresses peer0.org1.example.com:9051 --tlsRootCertFiles \
/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations\
/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt \
--peerAddresses peer0.org2.example.com:9051 --tlsRootCertFiles \
/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations\
/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt \
-c '{"Args":["invoke","a","b","10"]}'
Error: error getting endorser client for invoke: endorser client failed
to connect to peer0.org1.example.com:9051: failed to create new
connection: connection error: desc = "transport: error while dialing:
dial tcp 172.18.0.14:9051: connect: connection refused"
The command failed, because there is a typo in the command provided from "Building Your First Network" document provided from: https://hyperledger-fabric.readthedocs.io/en/release-1.4/build_network.html. The port number should 7051, not 9051.
bash-4.4# peer chaincode invoke -o orderer.example.com:7050 --tls true \
--cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto\
/ordererOrganizations/example.com/orderers/orderer.example.com/msp\
/tlscacerts/tlsca.example.com-cert.pem -C mychannel -n mycc \
--peerAddresses peer0.org1.example.com:7051 --tlsRootCertFiles \
/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations\
/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt \
--peerAddresses peer0.org2.example.com:7051 --tlsRootCertFiles \
/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations\
/org2.example.com/peers/peer0.org2.example.com/tls/ca.crt \
-c '{"Args":["invoke","a","b","10"]}'
Error: could not assemble transaction: ProposalResponsePayloads do not
match - proposal response: version:1 response:<status:200 > payload:"\n
?\361b\342\357\345+\371\344\332\203\242F6\262\347\014<i\241\302\247\272\326
_t(\250\337+\033\303\022\214\001\nx\0221\n\n_lifecycle\022#\n!\n\037namespa
ces/fields/mycc/Sequence\022\024\n\004lscc\022\014\n\n\n\004mycc\022\002\01
0\003\022-\n\004mycc\022%\n\007\n\001a\022\002\010\003\n\007\n\001b\022\002
\010\003\032\007\n\001a\032\00290\032\010\n\001b\032\003210\032\003\010\310
\001\"\013\022\004mycc\032\0031.0"
endorsement:<endorser:"\n\007Org1MSP\022\252\006
-----BEGIN CERTIFICATE-----
... peer0.org1.example.com certificate ...
-----END CERTIFICATE-----\n"
signature:"0D\002
>\236/\024\177\025/\017\266\321\227\271\223\240\321\316\256\340\256\225\203
\265BR\215\322M\014\223x\345g\002
O\370\216n\267i\367\256\252kh\007O\207[+u\240\220L@%\351\237'\252\237\024\3
45\320?*" >
The command failed again, because there chaincode installed on peer0.org1 and peer0.org2 either missing or does no match. See the next tutorial on how to resolve this error.
⇒ BYFN CLI "peer" Command Prefix
⇐ Query Chaincode Property on BYFN Channel
2020-09-30, ∼1386🔥, 0💬
Popular Posts:
How to extend json.JSONEncoder class? I want to encode other Python data types to JSON. If you encod...
How to use the "Ctrl-p Ctrl-q" sequence to detach console from the TTY terminal of container's runni...
How To Open Standard Output as a File Handle in PHP? If you want to open the standard output as a fi...
What is Azure API Management Publisher Dashboard? Azure API Management Publisher Dashboard is an Azu...
How to use the JSON to XML Conversion Tool at freeformatter.com? If you want to try the JSON to XML ...