INT010 - JSON サービス
JSON サービスを利用することで、ビジネス・アプリケーションが Web サービス・オペレーションを呼び出す際に、Web サービスのプロトコルや規格の考慮をすることなく、結果が受け取れます。細かい技術的な処理は、LANSA Integrator の SOAP サービスや、SOAP ウィザードにより生成されたコードによって扱われます。
ここでは 3 種類の演習が用意されており、いずれも LANSA Integrator スタジオを使用して,JSON Web サービスを実装する方法が示されています。これらの演習は順番に行う必要があります。
この演習では、JSON タイプ EmployeeDeptSect と Employees を使って Web サービスを作成します。
- この JSON クライアント Web サービスにより、サーバーに部門と課が渡されます。
- その部門と課の社員リストが配列として返されます。
- 1 つの部門のみが渡された場合は、その部門のすべての課の社員リストが返されます。
- 部門と課のどちらも指定しない場合は、この会社の社員全員が返されます。
このサービスをテストするために INT010C でビジネス・ロジック (プログラム・コーディング) が提供されており、これは、Visual LANSA のフォームとして作成されています。LANSA では、このロジックを 5250 ファンクションまたは Web ページ・アプリケーションではとして作成することも可能です。また、RPG を使用することもできます。
以下は、JSON サービスの作成・テストを行う、これから実施する 3 つの演習の手順の概要です。
INT010A - JSONサービス - サーバーの定義
- JSON サーバー・タイプ (このサービスにより処理される変数) を定義します。
[SOAP サーバー・ウィザード] を使って、SOAP サーバー・ソリューションと JSON エージェント・ソリューションを作成します。
- 両方のソリューションのプログラム変数にパラメータをマッピングします
- iiiEmployeeDeptSect を処理する jar ファイルを作成するソリューションを生成します。これはクライアントとサーバーの両方で使用します。
- iiiEmployees を処理する jar ファイルを作成するソリューションを別途生成します。これもクライアントとサーバーの両方で使用します。
- 生成された RDMLX を使って、社員の応答をサポートするファンクションを作成し、ビジネス・ロジックを追加します。
- このファンクションを JSMDIRECT サービスとして登録します。
INT010B – JSON サービス – クライアント・ロジックの作成
- INT010A で生成された RDMLX を使って、社員の要求をサポートするファンクションを作成し、ビジネス・ロジックを追加します。
- 生成された RDMLX をベースにフォーム iiiFRM02 を作成し、ビジネス・ロジックを追加します。
INT010C - JSONサービス - テスト
- このフォームは部コードと課コードを受け取り、JSON エージェント・ファンクションを呼び出します。このファンクションはサーバーにある、以下の処理を行うサービスを呼び出します。
- iiiEMPLOYEEDEPTSECT にバインドすることで、プログラム変数が設定されます。
- サービスを呼び出します。
- Web サーバーは JSMDIRECT を起動し、IIIEMPLOYEESERVER を実装するファンクションを実行します。
- フォームが社員リストを受け取り、リスト・ビューにデータを追加して、結果を表示します。