У меня есть фабричная сеть с простым BNA. Эта BNA определяет два типа участников, а именно. Корпоративный и личный. Здесь каждый Лицо имеет отношения с корпорацией, как показано ниже (файл cto):
participant Corporate identified by corporateId {
o String corporateId
o String corporateName
}
participant Person identified by personId {
o String personId
--> Corporate corporate
}
Что я пытаюсь сделать:
- Создание корпорации с использованием функции процессора транзакций: успех
- Создание персоны с использованием функции процессора транзакций: Сбой
Ниже приведен фрагмент функции процессора транзакций для # 2:
let corporateIdExpected = personDetails.corporate;
if(corporateIdExpected && corporateIdExpected != '') {
let corporateRetrieved = await query("GetCorporateByCorporateId", {corporateId: corporateIdExpected});
if(!corporateRetrieved || corporateRetrieved == '') {
throw new Error("Corporate details not valid. Please check if your corporate is present on the network.");
}
}
Фрагмент из моих запросов.qry:
query GetCorporateByCorporateId {
description: "Returns all corporates in the registry"
statement:
SELECT org.samplenetwork.participants.Corporate
WHERE (corporateId == _$corporateId)
}
Итак, я получаю следующую ошибку при попытке # 2:
Ошибка: 2 НЕИЗВЕСТНО: ошибка при выполнении цепного кода: транзакция возвращена с ошибкой: Ошибка: Ошибка: http: чтение в закрытом теле ответа
Однако, когда я пытаюсь выполнить запрос прямо из чванства, он успешно выполняется.
Я использую:
Hyperledger Fabric: 1.1
Композитор Hyperledger: 0.19.8
Я пропускаю какие-либо проверки или шаги для этого?