Идентификатор цепного кода создается как хэш-код для нескольких параметров (путь к цепному коду + аргументы + исходный код), если вы видите в ответе на команду «развертывание» что-то вроде этого:
{“jsonrpc":"2.0","result":{"status":"OK","message":"8d803651564981858842409c6a5c3bf3f6ea69f90a6a7bfb672c2c8c3b6eb4c48105c5807e52f1a5ffdce0e86966688019a6c4013ffca524d5896e0b9ae201c6"}
Это означает, что ваш запрос на развертывание транзакции принят. С этого момента Fabric попытается создать контейнер для вашего чейнкода и запустить его в докере. Если что-то пойдет не так и контейнер не запустится, вы получите следующий ответ:
“LedgerError - ResourceNotFound: ledger: resource not found“ for all your commands.
В вашем примере вы пытаетесь развернуть цепной код Java в контейнере GO, и в результате вы получаете ответ:
(INFO 002 Deploy result: type GOLANG chaincodeID:...)
Это происходит потому, что Fabric не использует переменную «язык» для определения типа платформы (действительно для версии, которая была доступна 09.09.2016).
Мне удалось развернуть цепной код Java, используя следующий запрос REST:
curl -XPOST -d ‘{"jsonrpc": "2.0", "method": "deploy", "params": {"type": 4,"chaincodeID": {"path": "/opt/gopath/src/github.com/hyperledger/fabric/examples/chaincode/java/SimpleSample","language": "java"}, "ctorMsg": { "args": ["init", "a", "100", "b", "1000"] }},"id": 0}' http://localhost:7050/chaincode
type:4
означает, что этот чейнкод является Java и должен использоваться соответствующий контейнер. (для GO мы должны использовать type:1
)
Имейте в виду, что в настоящее время Java работает только с security.enabled=false
, а с security.enabled=true
вы увидите следующее сообщение об ошибке:
[dockercontroller] deployImage -> ERRO 095 Error building images: API error (500): {"message":"The Dockerfile (Dockerfile) cannot be empty"}
person
Sergey Balashevich
schedule
09.09.2016
dev
режиме или в обычном режиме? как вы запустили одноранговый узел? какое имя вы указываете при запросе? - person Sufiyan Ghori   schedule 09.09.2016-l java
, если вы развертываете его с использованием кода Java - person Sufiyan Ghori   schedule 09.09.2016