INT009B - SOAP サービス - エージェントの定義
このステップでは、SOAPエージェント・ソリューションを使用してWebサービスを呼び出すアプリケーション・プログラムを作成します。
エージェント・ソリューションには次の 2 つのパーツがあります。
コード・サンプルは、LANSA ファンクションとして作成されています。SAMPLE_RDMLX_GETEMPLOYEES.TXT の RDMLX バージョンを使用します。必要に応じて独自のコーディングをすることが可能です。 生成されたコードの大部分はフォームのプッシュ・ボタンの Click イベント・ルーチンにコピーして使用します。 以下では、Web サービス要求を発行し、その結果を受け取るために、このルーチンに必要な手順が簡単に説明されています。 まず最初に、LANSA フォームは、目的に合わせて特別に設計された組み込み関数を使用してLANSA Integrator SOAPサービスとやり取りをする点に注意してください。 1. 最初のステップでは、Web サービスを呼び出すプログラムを用意します。このためには、Java サービス・マネージャの接続を開き、 SOAPAgent サービスをロードします。この演習で作成した、EMPLOYEEAGENT SOAP エージェント・ソリューションがロードされます。 !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! 2. 次のステップでは、Web サービスの GetEmployees オペレーションを呼び出します。2 つの SET PARAMETER コマンドは、オペレーションのパラメータにプログラム変数を "バインド" します。この時点で、ユーザーはこれらの値の入力を終えているはずです。サンプルのフォームでは、ユーザーはフィールド値を入力し、\[社員を取得\] ボタンをクリックします。すると、このイベント・ルーチンが実行されます。 LANSA Integrator のJava サービス・マネージャは、キーワード SERVICE_EXCHANGE(*FIELD) を使用することで LANSA プログラムの変数にアクセスできます。また、Java サービス・マネージャは以前の演習で SOAP ウィザードで指定したマッピングによって、各パラメータにどのプログラム・フィールドをマッピングするべきかを把握しています。 !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! 3. 3 番目のステップでは、プログラムは Web サービス・オペレーションを呼び出し、応答を待機して応答が NULL かどうかを確認します。 !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! 4. 4番目のステップにおいて、生成されたコードは未完成の状態です。ですからここで、ビジネス・ロジックを追加していきます。現時点ではプログラムはループし、ステータス (JSMXSTS) が NOFRAGMENT になるまで RESPONSE フラグメントを取得します。 !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! 5. 最後に、EmployeeAgent ソリューションを閉じ、SOAP エージェント・サービスをアンロードして JSM 接続を閉じて、クリック・イベントを形成するロジックを終了させます。 !worddavaf485e25f57cd86bb5b0fc63f3f1b1cc.png|height=32,width=32! |