无法创建资产(factory.newResource())



>我正在尝试使用事务创建资产,但它抛出了一个错误:

Error: Invalid or missing identifier for Type Temp in namespace org.acme.mynetwork

昨天我更新了我的节点包,从那以后它不起作用。任何领导将不胜感激。

型:

namespace org.acme.mynetwork
asset Temp identified by id {
    o String id
}
transaction Test {}

脚本:

 /**
  * blah
  * @param {org.acme.mynetwork.Test} blah
  * @transaction
  */
 async function Test() {
   let factory = getFactory()
   let registry = await getAssetRegistry("org.acme.mynetwork.Temp")
   let resource = factory.newResource("org.acme.mynetwork","Temp",1)      //Error
   await registry.add(resource)
 }

存取控制

 rule Default {
     description: "Allow all participants access to all resources"
     participant: "ANY"
     operation: ALL
     resource: "org.acme.mynetwork.*"
     action: ALLOW
 }
 rule SystemACL {
   description:  "System ACL to permit all access"
   participant: "ANY"
   operation: ALL
   resource: "org.hyperledger.composer.system.**"
   action: ALLOW
 }

谢谢。

您的标识符是一个字符串

因此(在 Composer v0.18.x 在线 https://composer-playground-next.mybluemix.net/对此进行了测试

 /**
 * blah
 * @param {org.acme.trading.Test} blah
 * @transaction
 */
async function Test() {
  let factory = getFactory();
  let registry = await getAssetRegistry("org.acme.trading.Temp");
  let resource = factory.newResource("org.acme.trading","Temp", 't1');      
  await registry.add(resource);
}

最新更新