2013年3月4日月曜日

Webサービスを呼び出すアプリケーション(サービス・リクエスタ)の作成 その2

 2.外部オブジェクトの利用

前回作成した外部オブジェクトを使ってWebサービスを呼び出す画面を作成します。
Webパネル上にユーザーID、パスワードを入力項目として配置し、実行ボタンでWebサービス・プロバイダーを呼び出します。





2-1.Webパネルを新規作成します。




2-2.ID、パスワード、外部オブジェクトを変数宣言します。




2-3.画面にID、パスワードの変数を貼り付けます。




2-4.実行ボタンのEnterイベントに以下のコードを記述します。


Event Enter
   If &LoginProcSVC.Execute(&UserId, &UserPassword)
      Msg('ログインに成功しました。')
   Else
      Msg('ログインに失敗しました。')
   Endif
EndEvent

以上で完了です。

ビルド・実行してみましょう。前回作成したユーザートランザクションにはあらかじめデータを登録しておいてください。

Webパネルを実行したところ

ユーザートランザクションに存在するユーザーIDと
パスワードを入力し、実行ボタンをクリック。
外部オブジェクト(Webサービス)の実行結果を判定し
成功メッセージが表示されています。

ユーザートランザクションに存在しないユーザーIDと
パスワードを入力し、実行ボタンをクリック。
エラーとなりました。



如何でしょうか? 外部オブジェクトという仕組みとWSDLインポートウィザードのおかげで、とても簡単にWebサービスを呼び出すアプリケーションが作成できました。
システム開発プロジェクトにおいては、例えば外部オブジェクトをアプリケーション基盤担当が作成・メンテナンスする事になれば、業務機能担当はWebサービスやSOAPプロトコル等の知識は必要なく、あたかもGeneXusのオブジェクトを利用するみたいに記述するだけで実装できるのです。



外部オブジェクトに関しては、Webサービスの他にストアドプロシージャやネイティブライブラリ(.netアセンブリやJavaクラス)なども呼び出す事ができます。これに関してはまたの機会に。


0 件のコメント:

コメントを投稿