本チュートリアルでは、Blockchain as a Service (BaaS) ネットワークに対して Fabric Java SDK サンプルプログラムを実行する手順について説明します。サンプルプログラムは、ユーザー登録、チャネルへの接続、レジャーブロック情報の読み取り、sacc チェーンコードを呼び出してレジャー項目の書き込みおよび読み取り、ピアからの切断という、5 つの操作をシーケンスで実行します。
サンプルが実証する内容
プログラムが正常に実行されると、以下の操作が順次実行されます。
ユーザー登録 —
userNameおよびsecretを使用してネットワークに対する認証を行います。チャネルへの接続 —
connection-profile-standard.yamlを読み込み、チャネルのピアノードに接続し、ブロックイベントの受信を開始します。ブロック情報の読み取り — レジャーからブロックデータを取得し、コンソールに出力します。
sacc チェーンコードの呼び出し — 新しいレジャー項目を書き込み、その後その項目を読み取ります。
切断 — ピアとの接続を閉じます。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
最低でも 1 つのチャネルが作成済みの BaaS ネットワーク
当該ネットワーク用のユーザーアカウントおよびパスワード
Java 1.8 実行環境および Apache Maven のインストール
BaaS コンソールからダウンロードした
connection-profile-standard.yamlSDK 構成ファイル
Java および Maven のインストール状況を確認します。
mvn -version出力には、Apache Maven 3.5.3 および Java バージョン 1.8.x が表示される必要があります。
Apache Maven 3.5.3 (3383c37e1f9e9b3bc3df5050c29c8aff9f295297; 2018-02-25T03:49:05+08:00)
...
Java version: 1.8.0_161, vendor: Oracle Corporationステップ 1:サンプルプログラムのダウンロード
java-sdk-demo-1.4.5をダウンロードして展開します。SDK 設定ファイルconnection-profile-standard.yamlを、展開されたjava-sdk-demoディレクトリにコピーします。
展開およびコピー後のディレクトリ構造は以下のようになります。
java-sdk-demo-1.4.5/
├── chaincode/
│ └── sacc.out
├── lib/
│ ├── fabric-sdk-java-1.4.5-jar-with-dependencies.jar
│ └── fabric-sdk-java-1.4.5-sources.jar
├── src/
│ └── main/java/com/aliyun/baas/
│ └── Main.java
└── connection-profile-standard.yaml (BaaS コンソールよりコピー)ステップ 2:依存関係のインストール
サンプルには、./lib/ 配下に Fabric Java SDK の JAR ファイルが同梱されています。java-sdk-demo-1.4.5 ディレクトリ内から、以下の 2 つの Maven インストールコマンドを実行し、ローカル Maven リポジトリに登録します。
mvn install:install-file \
-Dfile=./lib/fabric-sdk-java-1.4.5-jar-with-dependencies.jar \
-DgroupId=org.hyperledger.fabric-sdk-java \
-DartifactId=fabric-sdk-java \
-Dversion=1.4.5 \
-Dpackaging=jar
mvn install:install-file \
-Dfile=./lib/fabric-sdk-java-1.4.5-sources.jar \
-DgroupId=org.hyperledger.fabric-sdk-java \
-DartifactId=fabric-sdk-java \
-Dversion=1.4.5 \
-Dpackaging=jar \
-Dclassifier=sourcesステップ 3:チェーンコードのデプロイ
chaincode/sacc.out を BaaS にアップロードし、インスタンス化します。手順については、「チェーンコードのデプロイ」をご参照ください。
ステップ 4:サンプルの構成と実行
Java IDE(例:IntelliJ IDEA)で
java-sdk-demoプロジェクトを開きます。src/main/java/com/aliyun/baas/Main.javaを開き、以下の変数を設定します。変数 説明 場所 例 channelName接続先のチャンネル名です。 BaaS コンソール > [チャンネル] "first-channel"userNameご利用の BaaS ユーザーアカウント名です。 BaaS コンソール > [ユーザー] — secretご利用の BaaS ユーザーのパスワードです。パスワードを忘れた場合は、続行する前に BaaS コンソールからリセットしてください。 BaaS コンソール > [ユーザー] — chaincodeNameインスタンス化されたチェーンコードの名前です。 sacc.outを使用する場合、sacc"sacc"chaincodeVersionインスタンス化されたチェーンコードのバージョンです。 sacc.outを使用する場合、1.0.0"1.0.0"com.aliyun.baas.Mainをメインクラスとして実行します。
次のステップ
Fabric Java SDK の完全な API リファレンスおよび高度な使用方法については、「fabric-sdk-java リポジトリ」をご参照ください。