D Hyperledger Fabric v2.xのアプリケーションの更新
プラットフォーム・バージョンをアップグレードするときに、新しいバージョンのHyperledger Fabricで機能するように、既存のアプリケーションを変更する必要がある場合があります。
- Hyperledger FabricクライアントSDK for Node.jsバージョン2.2.9
- Hyperledger FabricクライアントSDK for Javaバージョン2.2.2
- Hyperledger FabricクライアントSDK for Goバージョン1.0.0
Hyperledger Fabric v2.xではGoバージョン1.20以降が必要であるため、使用するGoのバージョンをアップグレードする必要がある場合があります。
ノート:
既存のチェーンコード.zip
ファイルを再度デプロイし、索引がMETA-INF
ディレクトリではなくチェーンコード・パッケージのルート・ディレクトリに格納されている場合、問合せでタイムアウト・エラーが発生することがあります。タイムアウト・エラーを回避するには、Hyperledger Fabric v2.xインスタンスにデプロイする既存のチェーンコード内の索引が次のディレクトリにあることを確認します:META-INF/statedb/relationaldb/indexes
「状態データベースの索引」を参照してください。
次の項で説明するように、クライアントSDKを使用してチェーンコード・ライフサイクルの管理、イベントのリスニング、デジタル・ウォレットの管理など、より複雑な操作を完了する場合、アプリケーションの更新が必要になることがあります。
Hyperledger Fabric SDK for Node.js
次の表に、Hyperledger Fabric SDK for Node.jsのバージョン1.4と2.xの違いをまとめます。詳細は、Hyperledger Fabricドキュメントのv1.4からv2.0へのクライアント・アプリケーションの移行を参照してください。
バージョン2.xでの変更 | 顧客の行動 |
---|---|
fabric-client モジュールが削除されました。
|
fabric-network モジュールを使用するようにアプリケーションをリファクタします。
|
アイデンティティ情報の格納およびアクセスに使用されるウォレットが再設計されました。 | ウォレットを移行するためのガイドラインおよびユーティリティについては、Hyperledger Fabricのドキュメントを参照してください。 |
イベント・リスナーAPIおよび動作が再設計されました。 | 新しいAPIを使用するようにイベント・リスナーを書き換えます。 |
SDKには、チャネルの作成やチェーンコードのライフ・サイクルの管理など、管理機能や管理機能がなくなりました。 | これらの操作には、コマンド行インタフェースを使用します。ライフサイクル管理にバージョン1.4関数を使用する既存のクライアントは、Hyperledger Fabric v2.xインスタンスでは機能しません。 |
次の表に、Hyperledger Fabric v2.x fabric-network
モジュールとHyperledger Fabric v1.4.7 fabric-network
モジュールで使用可能なクラスを示します。
バージョン2.xファブリックネットワークモジュールクラス | バージョン1.4ファブリックネットワークモジュールクラス |
---|---|
|
|
Hyperledger Fabric SDK for Java
アプリケーションで、Java SDK for Hyperledger Fabric 2.0 (InstallProposalRequest、InstantiateProposalRequestおよびUpgradeProposalRequest)で非推奨になったライフサイクルAPIを使用している場合は、新しいバージョンのSDKでAPIを使用するようにアプリケーションをリライトします。詳細は、Java SDK for Hyperledger Fabric 2.0のリリース・ノートを参照してください。
Oracle Blockchain Platform REST API (RESTプロキシ)
既存のチェーンコードを起動するための変更は必要ありません。
これを必要とする新しいチェーンコードの初期化関数をサポートするために、オプションのisInitパラメータが既存のトランザクションAPIに追加されました。詳細は、REST APIドキュメントのトランザクションの送信を参照してください。
Oracle Blockchain Platform REST API (コンソール)
すべてのAPIコールで使用されているバージョンを更新します。Hyperledger Fabric v1.4.7の場合、APIのバージョン番号は1.1です。Hyperledger Fabric v2.xの場合、APIのバージョン番号は2です。
/console/admin/api/v1.1/chaincodes
/console/admin/api/v2/chaincodes
ノート:
既存のAPIのほとんどは、新しいHyperledger Fabric v2.xに相当しますが、1対1の一致はありません。一部のAPIは、Hyperledger Fabricの各バージョンに固有であり、リリースごとに異なるパラメータを持つものもあります。たとえば、Hyperledger Fabric v2.xでは、デプロイメント関数がchaincode
サブパスからchannel
サブパスに移動しました。詳細は、REST APIドキュメントの新規、変更および非推奨のAPIを参照してください。
Hyperledger Fabric v2.xには、ピアにチェーンコードをインストールしてチャネルで開始するための新しい手順を含む新しいチェーンコード・ライフサイクルが含まれているため、関連するAPIコールを更新する必要がある場合があります。さらに学習するには、チェーンコード・ライフサイクルを参照してください。