ステップ5. SOAPエージェント・ソリューションを使用するために必要なプログラムを確認する
このステップでは、SOAPエージェント・ソリューションを使用してWebサービスを呼び出すアプリケーション・プログラムを作成します。
エージェント・ソリューションには2つの部分があります。
· 「ステップ6. フォームiiiFRM02 - SOAPを利用して社員情報を取得を作成する」で提供されるコード例のgetEmployees SOAPサービス・アプリケーションを導入するユーザー・ベースのビジュアル・フォーム
· Integratorスタジオで生成されるEmployeeAgentソリューション用のRDMLXコード
· コード例は、LANSAファンクションとして生成されます。RDMLXバージョンのSAMPLE_RDMLX_GETEMPLOYEES.TXTを使用します。各自で適宜作成できます。
· 生成されたコードは、その大部分を、ビジュアル・フォームのPush Button Clickイベント・ルーチンにコピーして使用します。
以下は、Webサービス要求を発行してその結果を受け取るために、このクリック・イベント・ハンドラーに必要なステップの簡単な説明です。
最初に、LANSAフォームでは、目的に合わせて特別に設計された組み込み関数を使用してLANSA Integrator SOAPサービスと対話する点に注意してください。
1. 最初のステップではWebサービスを呼び出すプログラムを用意します。このためには、Java Service Managerの接続を開き、SOAPエージェント・サービスをロードします。このチュートリアルで作成したEMPLOYEEAGENT SOAPエージェント・ソリューションがロードされます。
2. 次のステップでは、WebサービスのGetEmployees操作を呼び出します。2つのSET PARAMETERコマンドは、操作のパラメータにプログラム変数をバインドします。この時点で、ユーザーはこれらの値を入力していなければなりません。ユーザーはフォーム例にフィールド値を入力し、[社員を取得]ボタンをクリックします。クリックすると、このイベント・ルーチンが実行されます。
LANSA IntegratorのJava Service Managerは、SERVICE_EXCHANGE(*FIELD)キーワードを使用してLANSAプログラムの変数にアクセスできます。そのため、Java Service Managerでは、SOAPウィザードで以前に指定したマッピングによって各パラメータにどのプログラム・フィールドをマッピングするべきかを把握しています。
3. 3番目のステップで、プログラムはWebサービス操作を呼び出し、応答を待機して応答がNULLかどうかを確認します。
4. 生成されたコードの4番目のステップは未完成です。ここで、ビジネス・ロジックを追加します。現時点ではプログラムはループし、ステータス(JSMXSTS)がNOFRAGMENTになるまでRESPONSEフラグメントを取得します。
5. 最後に、クリック・イベントを形成するロジックを終了するには、EmployeeAgentソリューションを閉じ、SOAPエージェント・サービスをアンロードしてJSMサーバーへの接続を閉じます。