パート2:宣言型のPOJO Webサービスの構築

すべてのJavaメソッドはWebサービスとして公開できます。JDeveloperはJavaクラスとそのメソッドからWebサービスを作成するためのウィザードを提供しています。

Webサービスのアノテーションを手動でJavaクラスに追加する代わりに、JDeveloperのウィザードを使用して管理することができます。ウィザードによってWebサービスのアノテーションが追加され、開発者はWebメソッドとして公開するメソッドを選択できます。この方法を利用すると、既存のJavaクラスを簡単にWebサービスに変換できます。

この項では、前述の項と同様に、新規プロジェクトとJavaクラスを作成します。このシナリオでは、アノテーションを手動で追加する代わりにウィザードを使用してWebサービスを作成します。ウィザードにより、クラスをWebサービスとして使用するために必要なすべてのアノテーションが作成されます。ウィザードの手順が終了した後で、前項と同様にHTTP Analyzerを使用して、統合サーバーを使用したWebサービスのテストを行います。

ステップ1:Plain Old Java Object(POJO)の作成
  1. 空のプロジェクトを新規に作成します。「Annotation」プロジェクト・ノードを右クリックし、「New」→「From Gallery」を選択します。New Galleryで、Categoriesリストから「General」→「Projects」を選択し、Itemsリストから「Custom Project」を選択します。「OK」をクリックします。

    New Galleryダイアログ
  2. Create Projectダイアログで、プロジェクトにWizardという名前をつけて、「Finish」をクリックします。

    新規プロジェクトのウィザード
  3. アプリケーション・ナビゲータで、「Wizard」プロジェクトを右クリックして、コンテキスト・メニューから「New」を選択します。

    Newコンテキスト・メニュー

  4. New Galleryで、Categoriesリストから「General」→「Java 」を選択し、Itemsリストから「Class」を選択します。「OK」をクリックして新しいJavaクラスを作成します。

    New GalleryのJava Class

  5. クラスにHelloServiceという名前をつけます。デフォルトでは、パッケージ名がプロジェクト名になります。パッケージ名がwizardと指定されていることを確認します。残りの値はデフォルトのままにして「OK」をクリックし、クラスを作成してコード・エディタで開きます。

    Create Java Classウィザード

  6. 次のメソッドをクラスに追加します。




  7. 新しいメソッドを追加したJavaエディタ
  8. Save AllSave Allをクリックして作業内容を保存します。

    この時点では、Helloという単語の後に引数値を返す、非常にシンプルなビジネス・ロジックをもつクラスを作成したに過ぎません。

ステップ2:Webサービス・クラスの作成
ここまででPOJO(Plain Old Java Object)の作成は完了したため、JDeveloperを使用して、メソッドをWebサービスとして公開するために必要なアノテーションを作成します。
  1. アプリケーション・ナビゲータで「HelloService.java」を右クリックし、「Create Web Service」を選択します。これにより、Webサービスとしてクラスを作成するウィザードが起動します。

    アプリケーション・ナビゲータのCreate Web Service

  2. Create Java Web ServiceウィザードのSelect Deployment Platformステップで、デプロイメント・プラットフォームとしてJava EE 6, with support for JAX-WS Annotationsが選択されていることを確認し、「Next」をクリックします。

    Create Web Serviceウィザード

  3. ウィザードのGeneration OptionsステップでWeb Service NameにMyWebService1と入力し、Port NameにMyWebService1Portが設定されていることを確認します。「Next」をクリックします。

    Create Web Serviceウィザード

  4. ウィザードのMessage Formatステップで「SOAP 1.2 Binding」を選択し、「Next」をクリックします。

    Create Web Serviceウィザード

  5. ウィザードのMethodsステップにすべての公開可能なメソッドが表示され、開発者は公開するメソッドを選択できます。このケースではメソッドが1つしかないため、デフォルトでこのメソッドが選択されています。残りのページでは、サービスに必要な追加クラスの指定、サービスのポリシーの設定、ハンドラの詳細の指定を行います。
    今回はこれらの値を変更しないため、いずれかのスクリーンで「Finish」をクリックしてWebサービスを作成します。

    Create Web ServiceウィザードのMethods

  6. クラス定義は更新され、Webサービスの公開に必要なアノテーションが追加されています。ポート名がMyWebService1Portに設定されていることを確認します。この名前になっていない場合はエディタで変更します。

    完成したクラスを表示したJavaエディタ

  7. Save AllSave Allをクリックして作業内容を保存します。

ステップ3:Webサービスのテスト

この項では、Webサービスのコンパイル、デプロイ、およびテストを行います。前述の項と同様に、HTTP Analyzerを使用してWebサービスのテストを行います。アナライザを使用してWebサービスをテストする場合、サービスは自動的にコンパイルされ、統合サーバーにデプロイされます。次にアナライザが起動され、Webサービスへの値の送受信が可能になります。

  1. アプリケーション・ナビゲータでWizardプロジェクトの「HelloService.java」を右クリックし、コンテキスト・メニューから「Test Web Service」を選択します。

    これにより、統合サーバーの起動とサービスのデプロイがおこなわれ、アナライザが開始されます。統合サーバーを初めて実行する場合、開始に数秒かかる場合があります。

    アプリケーション・ナビゲータでTest Web Serviceを起動

    前述の項と同様に、HTTP Analyzerエディタの上部にはWebサービスのURL、WSDL URL、および公開される操作が表示されます。

    HTTP Analyzer

  2. リクエスト領域で、arg0フィールドに<あなたの名前>を入力して、「Send Request」をクリックします。

    HTTP Analyzerの入力

    アナライザによってサービスにリクエストが送信され、数秒後に、戻りパラメータが表示されます。

    HTTP Analyzerの出力

    ここまでで、JDeveloperのウィザードを使用して、WebサービスにJavaクラスのアノテーションを追加しました。これはボトムアップ手法でWebサービスを作成した例であり、はじめにJavaクラスを作成してから、これをWebサービスに変換しました。場合によっては、使用するWebサービスがあらかじめ存在することがあります。これはトップダウン手法の例になります。次の項では、既存のWebサービスを消費する方法を確認します。

  3. WSDLファイルからWebサービスを作成するタスクの準備として、WSDLをファイルに生成します。アプリケーション・ナビゲータで「HelloService.java」クラスを右クリックして、「Show WSDL for Web Service Annotations」を選択します。

    アプリケーション・ナビゲータでShow WSDLを選択

    WSDLファイルの生成が開始され、設計エディタにMyWebService1.wsdlが表示されます。ノードを開いて選択すると、フローが視覚化できます。

    wsdlを表示した設計エディタ

  4. Imports」をクリックすると、WSDLが使用するその他のアーチファクトが表示されます。ここでは、MyWebService1_schema1.xsdが使用されています。

  5. ドロップダウン・リストから「MyWebService1_schema1.xsd」を選択します。

    スキーマの選択を表示したドロップダウン

  6. ビジュアル・エディタ・ウィンドウにスキーマ・ドキュメントが開き、定義された要素間の関係が表示されます。

    スキーマ・ドキュメントを表示した設計エディタ

  7. メニューから「File」→「Save As...」を選択します。

    ファイル・メニューのSave As

    アプリケーションのルート・ディレクトリ(WebServicePractice)にファイルを保存します。

    Save Asダイアログ

  8. MyWebService1.wsdl」を選択し、MyWebService1_schema1.xsdファイルと同じディレクトリに保存します。

  9. MyWebService1.wsdlファイルを保存した場所に移動し、ワードパッドまたはテキスト・エディタでこのファイルを開きます。

    テキスト・エディタで開いたwsdl

  10. ファイルを確認したら、テキスト・エディタ・ウィンドウを閉じます。

  11. エディタ内ですべてのタブを閉じ、アプリケーション・ナビゲータで「Wizard」ノードを閉じます。

    アプリケーション・ナビゲータのClose All

ブックマーク 印刷 すべて表示 | すべて非表示
トップへ戻る
Copyright c 2013, Oracle and/or its affiliates.All rights reserved.