このステップでは、SOAPエージェント・ソリューションを使用してWebサービスを呼び出すアプリケーション・プログラムを作成します。
エージェント・ソリューションには次の 2 つのパーツがあります。
コード・サンプルは、LANSA ファンクションとして作成されています。SAMPLE_RDMLX_GETEMPLOYEES.TXT の RDMLX バージョンを使用します。必要に応じて独自のコーディングをすることが可能です。
生成されたコードの大部分はフォームのプッシュ・ボタンの Click イベント・ルーチンにコピーして使用します。
以下では、Web サービス要求を発行し、その結果を受け取るために、このルーチンに必要な手順が簡単に説明されています。
まず最初に、LANSA フォームは、目的に合わせて特別に設計された組み込み関数を使用してLANSA Integrator SOAPサービスとやり取りをする点に注意してください。
- 最初のステップでは、Web サービスを呼び出すプログラムを用意します。このためには、Java サービス・マネージャの接続を開き、 SOAPAgent サービスをロードします。この演習で作成した、EMPLOYEEAGENT SOAP エージェント・ソリューションがロードされます。

- 次のステップでは、Web サービスの GetEmployees オペレーションを呼び出します。2 つの SET PARAMETER コマンドは、オペレーションのパラメータにプログラム変数を "バインド" します。この時点で、ユーザーはこれらの値の入力を終えているはずです。サンプルのフォームでは、ユーザーはフィールド値を入力し、[社員を取得] ボタンをクリックします。すると、このイベント・ルーチンが実行されます。
LANSA Integrator のJava サービス・マネージャは、キーワード SERVICE_EXCHANGE(*FIELD) を使用することで LANSA プログラムの変数にアクセスできます。また、Java サービス・マネージャは以前の演習で SOAP ウィザードで指定したマッピングによって、各パラメータにどのプログラム・フィールドをマッピングするべきかを把握しています。

- 3 番目のステップでは、プログラムは Web サービス・オペレーションを呼び出し、応答を待機して応答が NULL かどうかを確認します。

- 4番目のステップにおいて、生成されたコードは未完成の状態です。ですからここで、ビジネス・ロジックを追加していきます。現時点ではプログラムはループし、ステータス (JSMXSTS) が NOFRAGMENT になるまで RESPONSE フラグメントを取得します。

- 最後に、EmployeeAgent ソリューションを閉じ、SOAP エージェント・サービスをアンロードして JSM 接続を閉じて、クリック・イベントを形成するロジックを終了させます。
