【发布时间】:2018-09-07 13:09:48
【问题描述】:
我有一个使用简单 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 的事务处理器函数的 sn-p:
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.");
}
}
来自我的 queries.qry 的片段:
query GetCorporateByCorporateId {
description: "Returns all corporates in the registry"
statement:
SELECT org.samplenetwork.participants.Corporate
WHERE (corporateId == _$corporateId)
}
所以,当我尝试 #2 时出现以下错误:
错误:2 UNKNOWN:错误执行链代码:交易返回失败:错误:错误:http:在关闭的响应正文上读取
但是,当我尝试直接从 swagger 执行查询时,它运行成功。
我正在使用:
超级账本结构:1.1 超级账本作曲家:0.19.8
我是否遗漏了任何检查或步骤?
【问题讨论】:
标签: hyperledger-fabric hyperledger hyperledger-composer