资产信息在看跌期后消失

时间:2018-06-05 13:31:51

标签: hyperledger-composer

我在hyperledger作曲家工作。在模型cto我定义 - 资产包含疫苗清单的儿童。此资产由以下内容定义:

    @Bean
public DataSource getJndiDataSource() {
    try {
        JndiTemplate jndiTemplate = new JndiTemplate();
        DataSource ds = (DataSource) jndiTemplate.lookup("java:comp/env/"+JNDI_DATASOURCE);
        return new DelegatingDataSource(ds);
    } catch(NamingException e){
        LOG.error("Could not find JNDI data source (java:comp/env/):"+JNDI_DATASOURCE, e);
        return null;
    }
}
  • 资产defVaccin,其中包含一些疫苗定义。疫苗定义如下:

sudo apt-get update && sudo apt-get -y upgrade sudo apt-get install python-pip

要在此列表中创建/添加疫苗,我使用交易"接种疫苗"在模型cto上定义如下:

asset Child identified by childId {
      o String childId
      o String name
      o String surname
      o DateTime dateOfBirth
      o Vaccin[] vaccins optional
      --> Parent hasparent
      --> Doctor hasdoctor
    }

就像在logic.js上一样

asset defVaccin identified by vaccinId {
      o String vaccinId
      o String diseases
      o Integer timeFirst
      o Integer timeSecond optional
      o Integer timeThird optional
      o Integer timeFourth optional
      o Integer timeFifth optional
    }

这很好,我的所有疫苗都在我的清单中。但是,如果我改变我的孩子或我的疫苗(只是做一个改变孩子的名字的例子),我之后有一个空列表。

有人知道为什么我的信息" disapear"从我的名单?我怎么能改变这个?

1 个答案:

答案 0 :(得分:0)

参见此处的示例 - > https://github.com/hyperledger/composer-sample-networks/blob/master/packages/carauction-network/lib/logic.js#L89

尝试

// add this vaccine to the list of child's vaccines array of concepts
vaccinate.inchild.vaccins.push(vaccin);

而不是

 // add this vaccine at the list of child's vaccines
vaccinate.inchild.addArrayValue("vaccins", vaccin);