出典:https://mapepire-ibmi.github.io/guides/clients/
2026.03.16:執筆時点でサンプルプログラム実行時にエラー(SSLExceptionなど)が出て正常動作していません、IBM i 側のSSL設定が出来ていない為もありそうなので、いったん途中ですがメモとして投稿しておきます。(後ほど修正したいと思います。)
私のローカル環境がほぼJavaほか開発しておらず標準的なプラグイン他が未導入でした。Mapepireのクライアントサンプルは標準的なプラグインが導入済みを前提に記述しているようで色々と追加モジュールのインストール等を要求されましたので諸学者の方には参考になると思います。
現在提供されているクライアントモジュール
執筆時点で提供されているクライアントモジュールは以下です。
Python
Node.js
Java
今後、C#/.NET Core, PHP, Go のクライアントモジュールを提供予定とのこと。
クライアントモジュールのダウンロードサイト
Githubからダウンロードが可能です
Mapepire-IBMi / samples : https://github.com/Mapepire-IBMi/samples

Mapepire サンプルプロジェクト
以下のGitにあります。
https://github.com/Mapepire-IBMi/samples
ダウンロードすると上で記載されている3つの言語のサンプルがありました。

以下で確認してみます。
Mapepire Javaサンプルアプリの確認
執筆時点でJavaのサンプルは2つありました。company-web-server と Simple-app です。まずかんたんそうなsimple-appを試します。
Simple-appのディレクトリーにREADME.mdがありましたのでそれを見ると実行手順がありました。
1.Mapepireサーバーを起動する。
2.Simple-appのリポジトリーをクローンします。
git clone https://github.com/Mapepire-IBMi/samples.git
私はGit for windowsのコマンドラインから実行しました。

続けてクローンしたローカルディレクトリーにcdします。
cd java/simple-app
ここでいったん中断してしまったため、再度Git for windowsを開いてダウンロードしたフォルダーを確認すると、サンプル2つともダウンロードされていました。(python,typescriptのサンプルも一緒にダウンロードされていました。)

git cloneした際のカレントディレクトリー配下の /sampes/javaフォルダーにダウンロードされていました。
続けて、config.properties.sampleをコピーして編集します。
cp src/main/resources/config.properties.sample src/main/resources/config.properties
コピー先のconfig.propeties を開くと以下のように接続するIBM i サーバー情報でした。

デフォルト状態では=以降がブランクなので個々の環境に応じて入力します。なお、Mapapireサーバーのデフォルトポートは8076です。
続いてアプリケーションをビルドします、Maven (mvn)を使用するガイドになっています。
MavenはOSSのソフトウェア管理・導入ツール、です。後述しますが、ビルドに必要なコンポーネントをpom.xmlに記述しておくと不足しているコンポーネントをインタネット上の指定されたサイトからダウンロードしてビルドしてくれます。この記事ではこれ以降でSL4J, LOG4Jをpom.xmlに追加記述しビルド時にMavenでダウンロードしています。
Mavenは以下の記事等を参照しました。(感謝)
Apache Mavenのインストール手順(Windows向け)
※一か所, PowerShellの起動の箇所だけ記事通りでは実行できず、直接Powershellを管理者権限で起動しました。
Mavenが導入出来たら以下のコマンドを実行します。
mvn clean package
最後に BUILD SUCCESS を確認できればOKです。

サンプルアプリの実行
まずはsimple-appを実行してみます。
cd target
java -jar simple-app-1.0-SNAPSHOT-jar-with-dependencies.jar --sql
最後のパラメーター --sql は別なパラメーターも指定可能です。

上記をwindowsコマンドプロンプトから実行すると、、
エラーになりました T T)
SLF4Jが無いようです。
※SLF4J(Simple Logging Facade for Java)= ログ出力用のJavaライブラリーです。
※参考にしました@感謝【初学者向け】SLF4Jで始めるJavaのログ出力入門
ということでSL4Jも追加導入します。SLF4Jを追加した後に実行したらlog4jも無い、と怒られこの2つを導入しました。
log4jの導入
Apache log4jダウンロード:https://logging.apache.org/log4j/1.x/download.html
上記からダウンロードして任意のフォルダーに解凍し、パスを通すといいようです。(上述のMavenと同様な手順)が、何かエラーが出たので別な方法でいったん、上記ダウンロードしたサンプルアプリ内にlog4j-coreのjarファイルをプロジェクトのlibディレクトリに配置しました。
pom.xmlにlog4jライブラリーとSLF4Jライブラリーを追加します。
下記のMavenサイトにはソフトウェアごとにpom.xmlに追加するdependencyのサンプルが記載されています。Mavenサイトの上部のSearchから必要なモジュールを検索します。

log4jのdependencyをpom.xmlに追加
https://mvnrepository.com/artifact/log4j/log4j/1.2.17
<!-- Source: https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
<scope>compile</scope>
</dependency>
HP上では下図の一番下の辺りに上記のサンプルが記載されています。

ひとまずSLF4J Simple Providerかなと思います。
さらにバージョンも色々あるのでベータ版でない最新 2.0..17 にしてみます。

SLF4Jのdependencyもpom.xmlに追加
<!-- Source: https://mvnrepository.com/artifact/org.slf4j/slf4j-simple -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.17</version>
<scope>test</scope>
</dependency>
参考:pom.xmlとは?Maven初心者のための完全ガイド【基本から実践まで】(感謝)
サンプルアプリの実行手順
其々のサンプルアプリのフォルダー内にREADME.TXTがあり、そこに実行準備と実効手順の記載があります。
上記はcompany-web-serverサンプルですが、こちらではDb2 for i のサンプルテーブルを使用する前提なのでこれのセットアップが必要です。
当サンプルアプリで使用するライブラリー名はデフォルトの SAMPLE という名前になっています。(上記リンク中のライブラリー名は変更されているのでご注意)
サンプルのソースを見るとライブラリー名、テーブル名も見えるのでIBM i に存在する別なライブラリー、テーブルに変更するのもできると思います。
サンプルの実行結果(現時点でエラー・・)
恐らくテスト環境にSSLが設定されていない為があると思われます、また別で設定したいと思いますが、いったんメモとして、、
comnany-web-serverのサンプルでは、README.TXTに従ってセットアップを進め、以下のコマンドでローカルでHTTPサーバーを起動し、Swaggerを開始します。
Start the company web server:
cd target
java -jar company-web-server-1.0-SNAPSHOT-jar-with-dependencies.jar
Start a web server to launch the Swagger UI:
npm install -g http-server
cd swagger
http-server --cors
localhostのhttpサーバーは表示されますが、、
http://localhost:8080
README.TXT記載のパラメーターを指定して実行すると、、エラーになります。。
(上記URLの後に下記の endpoint を追加して開く)
1. Connect to a database using the `/connect` endpoint.
2. Set the server trace level using the `/tracing` endpoint.
3. Experiment with the various endpoints:
| Method | Endpoint | Description |
| ------ | ----------------------- | --------------------------------------------------------- |
| `GET` | `/departments` | Get a list of departments |
| `GET` | `/departments/{deptNo}` | Get a department by department number |
| `GET` | `/employees` | Get a list of employees |
| `GET` | `/employees/{empNo}` | Get an employee by employee number |
| `GET` | `/sales` | Get a list of sales |
| `GET` | `/sales/{salesPerson}` | Get a list of sales associated with a sales person |
4. Disconnect from the database using the `/disconnect` endpoint.
いったんメモ書きとして残しておきます、いずれ直したいと思います。(^^;








