前 次 前/次ボタンと目次ボタンとの区切り線

手順 7 : Web サービスからコントロールを使用する

この節では、カスタム コントロールのメソッドを呼び出すために、Web サービスにメソッドを挿入します。

コントロールの挿入

  1. [パッケージ・エクスプローラー] で、Web サービス ファイル MailingListService.java をダブルクリックします。
  2. デザイン ビュー エディタを右クリックし、[新しいコントロール参照] を選択します。
  3. [コントロールの選択] ダイアログ ボックスが表示されます。

    このダイアログでは、前に controls パッケージに作成した MailingListControl を含めて、既存のさまざまなコントロールから選択できます。

    [MailingListControl - controls] を選択し、[OK] をクリックします。

  4. Ctrl〕+〔Shift〕+〔S〕を押して作業を保存します。

[デザイン ビュー] では、Web サービスが次のようになっているはずです。

[ソース ビュー] では、Web サービスが次のようになっているはずです。

package services;


import javax.jws.*;
import org.apache.beehive.controls.api.bean.Control;
import controls.MailingListControl;

@WebService public class MailingListService {      @Control     private MailingListControl mailingListControl;     @WebMethod
public String getCustomers() {
return "John Smith";
} }

Workshop for WebLogic によって、挿入したコントロール MailingListControl に必要なインポート文が追加されています。 MailingListControl 型で mailingListControl という名前のコントロールの変数宣言も追加されています。 @Control アノテーションを追加することによって、mailingListControl がコントロールであると宣言されています。

コントロールのメソッドの呼び出し

作成した MailingListControl のインスタンスである mailingListControl のメソッドを呼び出すメソッドを、サービスに追加します。

  1. [デザイン ビュー] で、コントロール メソッド getLocalCustomers を右クリックし、[代理メソッドの生成] を選択します。

    対応するメソッドが Web サービスのクライアント インタフェースに追加されます。

Web サービス クラスは次のようになります。

package services;
import javax.jws.*;
import org.apache.beehive.controls.api.bean.Control;
import controls.MailingListControl;

import model.Customer;


@WebService
public class MailingListService {
   @Control
   private MailingListControl mailingListControl;


   @WebMethod()
   public String getCustomers() {
return "John Smith";    }    @WebMethod()    public model.Customer[] getLocalCustomers() {
return mailingListControl.getLocalCustomers();    } }

 

[デザイン ビュー] では、Web サービスは次のようになります。

新しいメソッドはコントロール メソッド getLocalCustomers を呼び出します。このコントロール メソッドは、サンプル データベース内のカリフォルニア州のすべての顧客を Customer オブジェクトの配列として返します。

次の手順では、新しいメソッドをテストします。

チュートリアルを移動するには、矢印をクリックしてください。

 

ナビゲーションをスキップ バー   ページの先頭