首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在HyperLedger Composer中调用部署在同一节点上的另一个协定(BNA)。#hyperledger-composer

在HyperLedger Composer中,要调用部署在同一节点上的另一个协定(BNA),可以通过以下步骤完成:

  1. 首先,确保你已经在同一节点上成功部署了两个协定(BNA)。每个协定都有一个唯一的名称和版本号。
  2. 在调用协定之前,需要创建一个新的交易(Transaction)来定义调用的逻辑。可以使用HyperLedger Composer的建模语言(Modeling Language)来定义交易。
  3. 在交易定义中,使用getAssetRegistry函数获取要调用的协定中的资产(Asset)注册表。这将返回一个资产注册表实例,可以用于访问和操作资产。
  4. 使用资产注册表实例的get函数获取要调用的协定中的特定资产实例。传入资产的标识符作为参数,该标识符可以是资产的唯一标识符或其他属性。
  5. 通过获取的资产实例,可以调用其定义的函数或访问其属性。根据具体需求,可以执行各种操作,例如更新资产状态、触发其他交易等。

以下是一个示例交易定义的代码片段,展示了如何在HyperLedger Composer中调用部署在同一节点上的另一个协定(BNA):

代码语言:javascript
复制
/**
 * Sample transaction to call another deployed BNA
 */
async function callAnotherBNA(transactionId, assetId) {
    // Get the asset registry of the target BNA
    const assetRegistry = await getAssetRegistry('org.example.targetBNA.SampleAsset');

    // Get the specific asset instance from the registry
    const asset = await assetRegistry.get(assetId);

    // Call a function or access properties of the asset
    asset.someFunction();

    // Update the asset state or trigger other transactions if needed
    asset.someProperty = 'new value';

    // Save the updated asset back to the registry
    await assetRegistry.update(asset);
}

请注意,上述代码仅为示例,实际的交易定义可能会根据具体情况有所不同。在实际使用中,需要根据部署的协定和具体需求进行适当的调整。

对于HyperLedger Composer的更多信息和详细文档,请参考腾讯云的相关产品和文档:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何用Python&Fabric打造区块链“淘宝”商城

3、创建和部署区块链业务网络 还记得你刚才安装依赖包 yo 和 generator-hyperledger-composer 吗?...1)生成区块链业务网络 在所选目录打开终端并输入 yo hyperledger-composer: ?....*" 6 action: ALLOW 7} 5)生成业务网络存档(BNA) 到现在所有的代码编写任务都已完成,接下来你要为区块链业务网络创建一个存档文件,以便将其部署到本地 Fabric 运行环境...6、生成使用REST APIAngular应用程序 还记得 yo hyperledger-composer 这个生成器吗?...要创建 Angular Web 应用程序,终端输入 yo hyperledger-composer,选择 Angular,选择使用卡 admin @ cards-trading-network ,连接到当前业务网络和

2.3K40

使用Hyperledger Fabric和Composer实现区块链应用程序

节点本地持久性更改之后,将更改提交给网络(“认可”)并在其他组织接受后插入到区块链以太坊或其他公共区块链平台背景下,可以将链码与智能合约进行比较。 ? 通道用于实现隐私领域。...这为连接到Fabric网络客户端提供了灵活数据访问。 使用Composer添加更简单概念 Hyperledger-ComposerHyperledger生态系统工具之一。...可以Composer Query Language定义对分类帐数据常用查询,这是一种类似SQL语言。 然后,必须将所有必需文件打包到.bna文件BND(业务网络定义)。...对于Yeoman(使用模板设置项目的代码生成器,Maven Archtypes),有一个模板(hyperledger-composer:businessnetwork。...最后,我们来看看主分支解决方案。所有这些要求都已在其中实施和测试。我们现在用npm run createArchive生成完成.bna文件,然后dist/文件夹

2.1K20

一文了解超级账本DLT、库、开发工具有哪些, Hyperledger家族成员你认识几个?

Hyperledger(超级账本项目)2015年12月正式发布,4年,从认识到部署到实操,相信也有非常多开发者跟着一路走过来。...随着Besu新公告发布,我认为这可能是Hyperledger架构下运行各种技术有趣时机。 从本质上来说,Hyperledger可以分为三类:分布式账本技术(基本就是区块链)、库以及工具。...验证节点可以使用Gossip协议来分发半签名交易,作为多重签名交易一部分。当分类账本状态存储PostgreSQL时,区块存储文件。如果用发散性思维去想的话,这个项目会有无限可能性。...Cello将按需“即服务”部署模型引入了区块链,从而使创建、管理和停止区块链都变得更加容易。它在各种基础设施(裸机、虚拟机和容器)提供多租户链服务。...Explorer是一个用户友好Web应用程序,它可以查看、调用部署或查询区块、交易和相关数据、网络信息、链码和交易族(transaction families)以及储存在分类账本其他相关信息。

1K10

Linux基金会超级记账本开发框架和工具

Linux基金会Hyperledger超级记账本是一个开源合作跨行业区块链技术,包括金融,银行,物联网,工厂,科技等行业领军者IBM, Intel, Huawei, Baidu, Tencent...Burrow是初创公司monax.io捐献,Intel赞助之智能合同应用引擎。部署为Ethereum 以太坊智能合同节点,可以执行Permissioned EVM虚拟机上智能合同。...2.2 Hyperledger Cello ? 孵化,定位于Fabric区块链网络自动化运维平台,例如创建,编辑,删除主机,区块链网络,部署链码,查询调用链码等功能。...不过Cello定位很重要,Fabric部署是有些麻烦,自动化运维平台对于Fabric推广和维护必不可少。 2.3 Hyperledger Composer ?...2.4 Hyperledger Explorer ? 孵化,Web系统,用于浏览,调用部署或查询区块链网络数据,交易,网络,节点等信息。 2.5 Hyperledger Quilt ?

1.2K10

99%的人都不懂本聪、V神这么牛靠是什么?一张图而已!

其中,交易有两种类型: 部署交易:以程序作为参数来创建新交易。部署交易成功执行后, 链码就被安装到区块链调用交易:在上一步部署链码执行操作。...账本既可以存储在所有的 peers 节点,又可以选择存储几个 orderers 节点。 此外,账本允许重做所有交易历史记录,并且重建状态数据。... Hyperledger Fabric ,Node 是区块链通信实体。Node 仅仅是一个逻辑功能,多个不同类型 Node 可以运行在同一个物理服务器。...Blockchain 运行程序叫作链码,持有状态和账本数据,并负责执行交易。Hyperledger Fabric ,只有被认可交易才能被提交。而交易是对链码操作调用,因此链码是核心内容。...Java 版联盟链部署架构 联盟链由 1 个超级节点和若干个普通节点组成,超级节点除具备普通节点功能外,还具备联盟实施成员管理、权限管理、数据监控等工作。

1K21

Hyperledger Caliper原理及使用指南

调用区块链北向接口时,每个交易关键指标(创建交易时间、交易提交时间、交易返回结果等)都会被记录下来,并用于生成最终预定义性能指标统计信息。...用户自己定义test case可以benchmark文件夹实现自己定义相应JavaScript代码来实现相应智能合约方法调用以及初始化和结束时要做事情。...在学习使用时候可以重点关注fabric-samples文件夹下相关配置,网络配置network目录,测试配置benchmark文件夹,智能合约文件src/contract文件夹。...局部安装 这种方式好处是可以同一台服务器设置多个不同测试客户端而且不会相互干扰。...目前Caliper测试Fabric v1.4以上版本使用SDK采用是SDK高级API,封装效果好,但是测试结果发现,8核16G服务器,测试sendRate800TPS左右时候,服务器CPU

1.6K20

什么是Hyperledger?Linux如何围绕英特尔区块链项目构建开放平台?

许多世界最大技术和金融公司Hyperledger会见了一些最热门区块链创业公司。        Hyperledger“执行政府”都是各行各业领军人物。...执行董事Brian Behlendorf被问到是否会有一个“Hyperledger币”——一个Hyperledger区块链运行货币单位。...这是Cello,一种区块链即服务部署模型,Composer,一种用于构建区块链业务网络工具,一种用于查看、查询和部署区块链事务和相关数据资源管理器,以及Indy,一系列工具、库和其他基于区块链数字身份组件...Sawtooth Lake另一项创新是交易建立和传播。客户端构建事务并将其提交给验证器。这包括他们批处理获得事务并将它们完全提交。...有了这个,用户可以管理区块链整个债券组合。目前测试Sawtooth另一个用例是数字资产。

92600

Hyperledger Fabric基础之账本

账本状态用于记录在区块链中共享应用信息,我们可以编写程序调用链码采访这些状态,例如通过key操作(查增删)。...现实,World state常用数据库实现,数据库对于读取和存储状态都提供了高效实现,是不是和no-sqlcouchdb, mongodb有点像 :-) 交易保存了World state变化,...即使保存账本一个节点被篡改了,它不能让其它有正确区块记录记账节点认同。 实际,区块链于world state不同,通常不使用数据库保存,通常使用文件保存。...(5) Endorsements背书记录 E4, 之前章节所述,更新交易第一步发起提议后,需要背书节点签名,就在这里记录了。...再之后估计就是学下更方便些Hyperledger Composer方式去开发部署区块链。 但是相信有了前面这些核心基础知识, 后面的学习会相对简单很多。

89300

Hyperledger Fabric 2.0 Alpha发布了!

Fabric chaincode lifecycle Fabric 2.0 Alpha介绍了分布式治理链码特性,包括在你节点安装链码以及一个通道启动链码新流程。...使用同一个安装包启动多个链码:之前生命周期管理中一个通道上链码可以使用名字和版本来指定一个安装链码。...现在版本你可以使用一个链码安装包在同一个通道或者不同通道使用不同名字进行多次部署。...使用FabToken:这个操作指南提供了有关如何在Fabric网络使用token详细概述。该指南还包含有如何使用tokenCLI创建和传输token示例。...Setting up an ordering node:描述部署排序服务节点过程,与排序服务实现无关。

1.2K30

Hyperledger Fabric基础知识

它提供了一种新交易方式,从而可以从根本改变业务实现。 那么,众多区块链框架,开发人员应该首先掌握哪个框架呢?...本文概述了什么是Hyperledger Fabric,如何使用它来构建解决方案以及如何在Hyperledger Fabric执行事务。 什么是Hyperledger Fabric?...peers具有成员资格服务提供商从其所属组织分配身份(数字证书)。不同组织Peers可以同一channel。 Membership Services Provider (MSP)。...MSP是证书颁发机构,以管理用于认证成员身份和角色证书。Hyperledger Fabric网络,所有的节点必须要有认证过身份才能进行交易。...Hyperledger Fabric网络上部署链码。 使用SDK开发客户端应用程序。

2K10

Hyperledger Fabric 2.0 Alpha发布了!

Fabric chaincode lifecycle Fabric 2.0 Alpha介绍了分布式治理链码特性,包括在你节点安装链码以及一个通道启动链码新流程。...使用同一个安装包启动多个链码:之前生命周期管理中一个通道上链码可以使用名字和版本来指定一个安装链码。...现在版本你可以使用一个链码安装包在同一个通道或者不同通道使用不同名字进行多次部署。...使用FabToken:这个操作指南提供了有关如何在Fabric网络使用token详细概述。该指南还包含有如何使用tokenCLI创建和传输token示例。...Setting up an ordering node:描述部署排序服务节点过程,与排序服务实现无关。

80120

Fabric基础架构原理(1) | 赠书活动

管理类包括启停节点和配置网络等;链码类操作主要是链码生命周期管理,安装、实例化以及调用链码。最常用客户端是命令行客户端(CLI),此外是用 Fabric SDK 开发应用客户端。...背书节点主要对交易预案进行校验、模拟执行和背书。确认节点主要负责检验交易合法性,并更新和维护区块链数据和账本状态。实际部署,背书节点和确认节点既可以部署同一物理节点,也可以分开部署。...CA 节点主要给Fabric网络成员提供基于数字证书身份信息,可以生成或取消成员身份证书(certificate)。成员身份明确基础,Fabric可以实现权限控制管理。...另外,同一组织节点会选举或指定主导节点( leading peer ),主导节点负责接收从排序服务发来区块,然后转发给本组织其他节点。... Fabric 网络,可能同时存在多个彼此隔离通道,每个通道包含一条私有的区块链和一个私有账本,通道可以实例化一个或多个链码,以操作区块链数据。

73020

区块链技术面试常被问到Hyberledger Fabric关键概念

Privacy and confidentiality 隐私与保密 Hyperledger Fabric 使竞争商业组织、任何需要私有、保密交易组织共存在同一个许可网络。...Chaincode应用编码了channel执行特定类型交易逻辑。...为了更进一步隔离数据,chaincode内值可以附到账本前使用通用加密算法,SHA-256,来加密(部分或全部)。...然后,共识不仅是简单同意交易顺序,它是贯穿了整个交易流程基本角色,从提案、背书、到确认顺序、验证和承诺,Hyperledger Fabric强调这样差异。...访问控制列表在网络层分级实现(从ordering服务下到channels),并且随着交易穿过不同架构组件,payloads(负载不同层次是不同)被重复签名,验证和认证。

1.7K10

Java Chaincode学习交易系统Hyperledger Fabric帐户钱包模型

此外,世界状态存储在数据库以表示超级账本,使得这些节点不需要总是搜索超级账本以进行数据检索,并且可以更快地从数据库检索数据(状态)。...特性部分所述,Java Chaincode,我们将实现: 1.用户钱包创建 2.用户钱包查询 3.钱包代币转账(即从一个钱包向另一个钱包汇款) 从上面这个简单要求,我们需要有以下类: 1.钱包类...2.将代币从一个钱包转账到另一个钱包。 3.获取(查询)钱包。 4.Init函数,实例化Chaincode时调用。 5.Invoke函数,当用户想要调用函数(1)(2)或(3)时调用。...org.hyperledger.fabric.chaincode下创建一个新包: ? 调用模型包Models,然后确定: ? 应该可以看到: ?...此外,我们例子,我们整个交易系统只支持一种代币类型(即只有一种代币)。

2K20

Hyperledger Fabric和VSCodeIBM区块链扩展开发智能合约

完成本教程后,你将了解如何使用VSCode本地Hyperledger Fabric网络快速开发,演示和部署区块链应用程序。本教程假设你对Hyperledger Fabric有一些基本了解。...创建一个新JavaScript智能合约。 打包智能合约。 创建,探索和了解Hyperledger Fabric网络。 本地Hyperledger Fabric实例上部署智能合约。...5.安装智能合约 image.png 好,你已经完成超过一半了。现在是有趣部分!让我们节点安装这份合约!为此,你必须首先连接到Hyperledger Fabric网络。...2.智能合约Smart Contracts下,单击+install。 3.接下来,扩展程序将询问你在哪个节点安装智能合约。选择peer0.org1.examplee.com。...那么,现在是时候实际调用智能合约功能了!为此,你可以使用VSCode扩展。 1.LOCAL FABRIC OPS下你应该看到FABRIC GATEWAYS。

2.7K30

Java调用以太坊智能合约

Web3j让Java开发者可以轻松地访问以太坊区块链并调用区块链智能合约方法,本教程,我们将学习如何创建一个简单命令行应用来访问区块链合约。...1、什么是web3j Web3j是一个开发包,你可以利用这个开发包快速实现对以太坊/Quorum节点访问,同时也可以用它为某个智能合约文件生成对应java封装类,以便在Java应用调用。...系统学习web3j开发,推荐汇智网在线互动教程:《Web3j以太坊开发详解》 2、节点安装与智能合约部署 首先我们需要搭建一个以太坊网络并部署智能合约,你可以参考这个repo,按照README说明搭建并部署智能合约...要调用以太坊链合约,我们需要两个东西: 钱包私钥 合约地址 区块链领域,账号通常称为钱包,不过这是一个比较混乱词语,有时钱包指的是单一地址,有时又指的是包含多个地址容器。...本文中,一个钱包指的是单一以太坊地址, ganache启动时会列出10个钱包地址以及其对应私钥。

5.5K21

Hyperledger Fabric 和企业级以太坊,谁才是企业首选?

1) 社区 企业级以太坊得益于世界最大区块链开发社区。成千上万软件工程师、产品开发人员和设计师正在生态系统工作,构建基础架构、开发工具和应用程序。...2)部署 许多组织和政府报告称他们正在将企业级以太坊部署到其工作流程。 ...客户端 接下来我们探讨一下:可用于运行企业级分布式账本不同软件客户端。基于EVM网络,我们有Hyperledger Besu和Quorum。...客户端支持JWT身份验证,JWT身份验证可以用来定义承载方访问权限,可以根据这些权限调用RPC等。在其最新版本(1.4.2),该团队添加了更多基于租户特性。 Quorum具有更高级许可。...而在过去两三年中,这些公司主要重点是生产概念验证(PoC)并弄清楚区块链如何在其工作流程或过程中提供帮助。 许可区块链网络发生了变化,它为每个组成联盟成员部署区块链网络似乎并不高效。

81220

如约而至|2018年5月期技术雷达正式发布!

特别是,我们需要考虑一个事件范围,以及我们是否期望它在同一个应用程序、同一个领域或整个组织中被消费。...TICK STACK是一个由开源组件组成平台。使用它就可以轻松地收集、存储、绘制基于时间序列数据(度量和事件)来触发告警。...当开发者们谈到使用 Hyperledger 技术时,实际大多数时候是考虑 Hyperledger Fabric。然而,chaincode编程抽象相对底层,因为它直接处理账本状态数据。...HYPERLEDGER COMPOSER 构建于Fabric基础之上,加速了将想法实现为软件过程。Composer 提供 DSLs 来建立业务资源模型、定义访问控制和构建业务网络。...使用 Composer,可以不搭建任何基础设施情况下,仅通过浏览器来验证我们想法。需要明确是,Composer 本身并不是区块链,仍然需要把它部署 Fabric

88010

用Kubernetes部署超级账本Fabric区块链即服务(1)

需要指出是,BaaS目前多用于开发测试,即在同一个BaaS平台,部署多个区块链节点,每个节点代表不同组织机构。这样显然是中心化部署方式,只能用于开发测试用途。...还有就是 K8s 具备了多租户能力,可在同一个平台中运行多个互相隔离 Fabric 实例,方便开发测试,比如一个实例作为开发用,另一个实例作为测试用。...据了解,目前已经支持把 Fabric 部署 Docker 和 Swarm ,有关 K8s 支持还在开发。...正确姿势应该是调用chaincode 专用运行环境,新起一个 Docker Host ,用 TCP 接口远程调用。... Kubernetes ,通过 PV 和 PVC 来把 NFS 文件挂载到容器,除了创建相应 PV 和 PVC 外,还需节点配置文件把正确路径挂载进去。

1.9K20

Hyperledger Fabric 系统架构详解

联盟链严格意义并不是真正“去中心化”,它通过引入了权限管理机制(结合企业现实业务角色)来弱化对节点作恶预防机制,从而能提高效率、应对复杂业务逻辑。...企业应用场景较为复杂,往往 Hyperledger 只是在其中参与了某个或某些环节,因此与其他现有系统交互必不可少,因此 Hyperledger 设计注重配备完整 API 以供其他系统调用与交互...是一个可视化区块链操作工具,可以用于创建对用户友好 Web 应用程序;是首个Hyperledger区块链浏览器,用户可以查看/调用/部署/查询交易、网络、智能合约、存储等信息。...优势总结 Fabric通过将企业应用各个复杂环节分配到各个逻辑角色节点(背书、排序等),不需要所有节点都承担排序这样资源消耗较大操作,消除了网络瓶颈;分配了角色后某些交易只特定节点部署和执行,...对于一个链码交易来说,背书策略是链码实例化时候指定,一笔有效交易必须是背书策略相关组织签名才能生效,本质Fabric区块链交易验证是基于对背书节点信任,这也是称Fabric并不是严格意义去中心化原因之一

1.7K10
领券