exteNd Workbench 4.1
コアヘルプ

 

    First Previous Next Last ツールガイド  05/22/03 08:41:32 

第5章    Web Serviceウィザード

この章では、Novell exteNd WorkbenchのWeb Serviceウィザードについて説明します。このウィザードにより、Webサービスを実装したり、呼び出したりするためのファイルを生成できます。トピックは次のとおりです。

For more information    Webサービスの概念、標準、および技術の概要については、『開発ガイド』の Webサービスの概要に関する章を参照してください。

 
Top of page

ウィザードについて

Web Serviceウィザードでは、次のタスクのいずれかを実行できます。

いずれの場合でも、JAX-RPC (Java API for XML-based RPC)および jBroker Web Novell exteNd に含まれているJAX-RPXの実装)に基づいて、ウィザードによりJavaソースファイルが生成されます。JAZ-RPCは、Webサービスサポートを提供するJ2EE仕様です。

生成されたファイルは、そのまま使用したり、必要に応じて変更したりできます。このJava指向の方法には、低レベルのSOAP APIをコード化する代わりに、熟知しているRMIおよびJ2EEの技術を使用してWebサービスを処理できるという利点があります。

動作   背後でWeb Serviceウィザードは複数の異なるコンパイラを使用して、要求された出力を生成します。

ウィザードで使用されるコンパイラ

生成される出力

リモートインタフェースジェネレータ

JavaBean、Javaクラス、またはEJBセッションBeanからのJavaリモートインタフェース

wsdl2java (jBroker Webから)

WSDLファイルからのJavaリモートインタフェース

xsd2java (jBroker Webから)

WSDLファイルのXMLスキーマで定義された複雑なタイプからのタイプクラス(JavaBeans、マーシャラー)およびマッピングファイル

rmi2soap (jBroker Webから)

Javaリモートインタフェースからのスケルトンおよび結合クラス、スタブおよびサービスクラス、そしてマーシャラー(複雑なタイプの場合)

rmi2wsdl (jBroker Webから)

JavaリモートインタフェースからのWSDLファイル

実行するコンパイラおよびその順序は、ウィザードのパネルへの入力時に設定したタイプおよび選択したオプションに応じて決定されます。

ウィザード以外の方法   コマンドラインから手動で個別のwsdl2java、xsd2java、rmi2soap、およびrmi2wsdlコンパイラを実行できます。詳細については、 jBroker Webヘルプを参照してください。

 
Top of page

ウィザードの使用

この節では、Web Serviceウィザードを使用するための準備、実行、および出力の処理について説明します。

操作

参照

ウィザードを使用して、次のいずれかに基づき新しいWebサービスを作成する

  • JavaBeanまたはその他のJavaクラス

  • EJBセッションBean

  • Javaリモートインタフェース

  • WSDLファイル

開発ガイド』の Webサービスの生成に関する章を参照してください。

ウィザードを使用して、WSDLファイルに基づき既存のWebサービスにアクセスするためのコードを作成する

開発ガイド』の Webサービスコンシューマの生成に関する章を参照してください。

 
Top of page

パネルの順序

この節では、Web Serviceウィザードで入力が必要なパネルについて、シナリオごとに説明します。

開始条件

使用するパネル

JavaBeanまたはその他のJavaクラス

  1. プロジェクトの場所(および WARプロジェクトの選択の場合もあり)

  2. クラスの選択

  3. メソッドの選択

  4. クラス生成およびSOAPオプション

EJBセッションBeanのホームインタフェース

  1. プロジェクトの場所(および WARプロジェクトの選択の場合もあり)

  2. クラスの選択

  3. EJBの検索情報

  4. クラス生成およびSOAPオプション

EJBセッションBeanのリモートインタフェースまたはSessionBeanクラス自体

  1. プロジェクトの場所(および WARプロジェクトの選択の場合もあり)

  2. クラスの選択

  3. EJBホームインタフェースの選択

  4. EJBの検索情報

  5. クラス生成およびSOAPオプション

Javaリモートインタフェース

  1. プロジェクトの場所(および WARプロジェクトの選択の場合もあり)

  2. クラスの選択

  3. クラス生成およびSOAPオプション

WSDLファイル

  1. プロジェクトの場所

  2. WSDLファイルの選択(および 複数の名前空間のマッピングの場合もあり)

  3. クラス生成およびSOAPオプション

 
Top of page

パネルの詳細

この節では、Web Serviceウィザードの各パネルのオプションについて説明します。パネルは、次のとおりです。

 
Top of section

プロジェクトの場所

このパネルでは、ウィザードで生成されたWebサービスファイルを保存するプロジェクトの場所(プロジェクト、ディレクトリ、パッケージ)に関する詳細を指定します。このパネルには2種類あります。

Procedure このパネルを完成する

  1. 「プロジェクト」を指定します。

    オプション

    操作

    Add to open project

    生成されたファイルをウィザードで保存するプロジェクトを選択します。このオプションを使用すると、現在Workbenchで開いているプロジェクトのリストから選択できます。

    Webサービスを生成する場合、通常WARプロジェクトを選択します。

    必要に応じて代わりにJARファイルを選択できますが、その場合WebサービスのサーブレットをマップするWARプロジェクトを指定するよう求められます。 WARプロジェクトの選択を参照してください。

    WSDLファイルからWebサービスを生成する場合、ウィザードでは現在のところJARプロジェクトを選択できません。WARプロジェクトを選択する必要があります。

    Webサービスコンシューマを生成する場合、任意のタイプのプロジェクトを選択できます。

    Create project

    使用する新しいプロジェクトを作成する場合、このボタンをクリックします。[New Project]ダイアログボックスが表示されます。

    For more information     プロジェクトおよびサブプロジェクトの作成を参照してください。

    No project -- just write files to the disk

    このオプションは無効になっています。Web Serviceウィザードでは、生成されたファイルは開いているプロジェクトに追加する必要があります。

  2. ディレクトリおよびパッケージを指定します。

    オプション

    操作

    Base directory

    デフォルトのベースディレクトリは、ファイルシステムでプロジェクトディレクトリの直下にあるsrcサブディレクトリです。別のファイルシステムの場所を選択する場合は、[Browse]をクリックします。

    Package

    (オンの場合)生成されるクラスに使用する完全修飾されたJavaパッケージ名を指定します(たとえばcom.myco.mypkg)。

    File directory

    このフィールドは情報提供のみで、生成されたファイルが保存されるファイルシステムの場所が表示されます。「ベースディレクトリ」と「パッケージ」を組み合わせたものになります。

    Add the files to the root of the archive

    (オンの場合)生成されたファイル(および存在する場合はそのパッケージパス)をプロジェクトアーカイブのルートに配置する場合、このオプションを選択します。

    Add the files to the archive with this prefix

    生成されたファイル(および存在する場合はそのパッケージパス)をプロジェクトアーカイブの指定したディレクトリ構造(プリフィックス)に配置する場合、このオプションを選択します。

    WARプロジェクトの場合、プリフィックスはWEB-INF/classesに自動的に設定されます。

    The files will be added to this location in the archive

    (表示されている場合)このフィールドは情報提供のみで、生成されたファイルが保存されるプロジェクトアーカイブの場所が表示されます。「プリフィックス」と「パッケージ」を組み合わせたものになります。

  3. Next]をクリックします。

 
Top of section

WARプロジェクトの選択

このパネルは、JARプロジェクトでWebサービスを保存する場合に必要なWARプロジェクトを指定する際に使用します。ウィザードにより、Webサービスの「サーブレットマッピング」に伴いWARの配備記述子(web.xml)が更新されます。

WSWpanelWARProjSel

Procedure このパネルを完成する

  1. 次の内容を指定します。

    オプション

    操作

    WAR project

    WebサービスのサーブレットをマップするWARプロジェクトを選択します。このオプションを使用すると、現在Workbenchで開いているWARプロジェクトを選択できます。

    Create project

    使用する新しいWARプロジェクトを作成する場合、このボタンをクリックします。[New Project]ダイアログボックスが表示されます。

    For more information     プロジェクトおよびサブプロジェクトの作成を参照してください。

  2. Next]をクリックします。

 
Top of section

クラスの選択

このパネルは、ウィザードがWebサービスファイルを生成するコンパイル済みのクラスを選択する場合に使用します。サポートされている選択肢は次のとおりです。

WSWpanelClassSel

デフォルトでは、選択されたプロジェクトのビルドディレクトリでコンパイル済みのクラスが検索され、[Available Classes]ボックスに表示されます。WARプロジェクトの場合、このリストはビルドディレクトリのWEB-INF/classesから特に生成されます。

Procedure 現在のリストから選択する

  1. Available Classes]リストにある項目をクリックします。

  2. Next]をクリックします。

Procedure 現在のリストを絞り込む

Procedure 別の場所からクラスを表示する

 
Top of section

WSDLファイルの選択

このパネルは、ウィザードがWebサービスファイルを生成するWSDLクラスを選択する場合に使用します。プロジェクト、ファイルシステム、または(URLを指定することにより) Webから選択できます。

注記:   WSDLファイルから新しいWebサービスの生成を計画している場合、そのWSDLファイルを事前に編集し、サービス定義のSOAPアドレスで正しいバインドURLが指定されていることを確認する必要があります。Web Serviceウィザードでは、Webサービスに対して生成するファイルでこのURLを使用します。

WSWpanelWSDLSel

デフォルトでは、選択されたプロジェクトのパネルで.wsdlファイルが検索され、[WSDL Files In Project]ボックスに表示されます。

Procedure 現在のリストから選択する

  1. WSDL Files In Project]リストのアイテムをクリックして、使用するWSDLファイルを指定します。

  2. Next]をクリックします。

Procedure ファイルシステムから選択する

  1. WSDL file or URL to use]の参照ボタン(...)をクリックして、ファイルシステムからWSDLファイルを選択します。

  2. Next]をクリックします。

Procedure URLによりファイルを指定する

  1. ターゲットのWSDLファイルのURLを[WSDL file or URL to use]に入力します。たとえば、次のように入力します。

      http://upload.eraserver.net/circle24/autoloan.asmx?wsdl
    
  2. Next]をクリックします。

 
Top of section

複数の名前空間のマッピング

このパネルは、XMLスキーマの複雑なタイプに対して複数の名前空間が使用されているWSDLファイルから生成する場合に使用します。各名前空間を個別のJavaパッケージにマップできます。

注記:   このパネルのメッセージは、次のパネル( クラス生成およびSOAPオプション)で[Map complex XML types to Java types]オプションがオンの場合にのみ使用されます。

WSWpanelMultiNsMap

このパネルには該当する名前空間が表示され、それぞれに対してデフォルトのパッケージ名が入力されます。任意のパッケージ名は編集することができます。各名前空間に対して固有なパッケージ名が指定されていることを確認してください。

Procedure 名前空間とパッケージのマッピングを編集する

  1. Package]列から編集する名前をダブルクリックして、任意のテキストを入力します。

    [Namespace]列の名前は編集できません。

  2. パッケージ名の編集後、[Next]をクリックします。

 
Top of section

EJBホームインタフェースの選択

このパネルは、クラス選択パネルで指定したEJBセッションBeanクラスまたはリモートインタフェースに対応するホームインタフェースの選択に使用します。

WSWpanelEJBHome

デフォルトでは、このパネルはEJBセッションBeanクラスまたはリモートインタフェースが存在する場所を対象として、ホームインタフェース(javax.ejb.EJBHomeを拡張するコンパイル済みのクラス)を検索します。見つかった場合は、[Available Classes]ボックスのリストに表示されます。

Procedure 現在のリストから選択する

  1. Available Classes]リストにある項目をクリックして、クラスを選択します。

  2. Next]をクリックします。

Procedure 別の場所からクラスを表示する

 
Top of section

EJBの検索情報

このパネルは、選択したEJBセッションBeanをJNDI (Java Naming and Directory Interface)により検索するためにWebサービスで必要な情報を指定する場合に使用します。

WSWpanelEJBLookup

このパネルには、Novell exteNd アプリケーションサーバに表示されているセッションBeanの検索に対応したデフォルトの初期コンテキスト値が表示されます。その他のJ2EEサーバの要件に関する情報については、該当するドキュメントを参照してください。

Procedure このパネルを完成する

  1. Deployed JNDI Name]を指定します。

    オプション

    操作

    Lookup String

    ターゲットのJ2EEサーバでセッションBeanが登録されているサブコンテキストおよびJNDI名を指定します。たとえば、ejbサブコンテキストでJNDI名が「SBMyEJB」のセッションBeanを検索するには、次のように入力します。

      ejb/SBMyEJB
    

    ウィザードでは、web.xml配備記述子で生成されるejb-ref宣言にこの情報が含まれます。JNDI検索を実行する場合この情報がランタイム時にどのように使用されるか学習するには、xxxDelegate.java (結合サーブレットに対して生成される委任クラス)のgetSessionBean()メソッドを参照してください。

  2. Initial Context Information]を指定します。

    オプション

    操作

    Factory Class

    ターゲットのJ2EEサーバに対応するパッケージのプリフィックスおよびInitialContextファクトリクラス名を指定します。

    Provider URL

    ターゲットのJ2EEサーバのJNDI名前空間に対するURLを指定します。

    User ID

    ターゲットのJ2EEサーバにログオンし、セッションBeanにアクセスする権限を持つ有効なユーザ名を指定します。

    Password

    ユーザIDのパスワードを指定します。

    ウィザードでは、web.xml配備記述子で生成されるservlet宣言にこの情報が含まれます。ランタイム時にこの値がどのように使用されるか学習するには、xxxDelegate.javaのgetInitialContext()メソッドを参照してください。

  3. Next]をクリックします。

 
Top of section

メソッドの選択

このパネルは、JavaBeanまたはその他のJavaクラスからWebサービスファイルを生成する際に表示されるメソッドを選択する場合に使用します。

WSWpanelMethSel

このパネルでは、選択したクラスが確認され、その有効なメソッドが[Available Methods]ボックスに表示されます。

Procedure 表示するメソッドを選択する

  1. Add]および[Add All]ボタンを使用して、[Available Methods]から任意の数の項目を[Selected Methods]に移動します。

    必要な場合は、[Remove]および[Remove All]を使用すると、任意の数の項目を戻すことができます。

  2. Next]をクリックします。

 
Top of section

クラス生成およびSOAPオプション

このパネルは、(スケルトン、結合、およびスタブクラスを含め)生成するWebサービスファイルを選択して、ファイルでエンコードするSOAP実装の詳細を指定する場合に使用します。このパネルには2種類あります。

Procedure このパネルを完成する

  1. Generation Options]を指定します。

    オプション

    操作

    Generate stubs

    このオプションをオンにすると、Webサービスを使用するためのサービスクラス、スタブクラスなどのクラスおよび簡単なクライアントアプリケーションが生成されます。次のソースファイルが取得されます。

    • xxxService.java

    • xxxServiceImpl.java

    • xxx_Stub.java

    • xxxClient.java

    Generate skeletons

    このオプションをオンにすると、Webサービスを実装するためのクラスが生成されます。次の実装モデルから1つ選択します。

    • Tie-based    Webサービスの要求および個別の実装クラスに対する委任メソッド呼び出しを処理するために使用されるスケルトンおよび結合サーブレットクラスを生成します。次のソースファイルが取得されます。

      • xxx_ServiceSkeleton.java

      • xxx_ServiceTieSkeleton.java

      • xxxTie.java

      JavaBean、Javaクラス、またはEJBセッションBeanで開始する場合、次のソースファイルも取得されます(クラスの委任に使用されます)。

      • xxxDelegate.java

    • Not tie-based    Webサービスの要求の処理に使用されるスケルトンサーブレットクラスのみを生成します。次のソースファイルが取得されます。

      • xxx_ServiceSkeleton.java

    Generate WSDL file

    (表示されている場合)このオプションをオンにすると、次のファイルが生成されます。

    • xxx.wsdl

    レジストリに公表する場合に便利な標準のWSDL形式でWebサービスを記述します。ウィザードにより、このファイルはソースツリー(一般名はsrc)のベースディレクトリに保存されます。

    Generate jBroker Web 1.x compatible classes

    このオプションをオンにすると、次の情報に対する従来のjBroker Web (バージョン1.x)の表記規則に対応する特定のファイルが生成されます。

    • ファイル名

    • クライアントコードのスタブアクセス

    これらの表記規則を除き、生成されたファイルはjBroker Webの最新バージョンに従います。

    このオプションは、jBroker Web 1.xで作成されたアプリケーションを維持し、現在の規則(JAX-RPCが基礎になっており、既存のコードを一部変更する必要があります)に切り替える準備がまだできていない場合にのみ使用します。

    For more information    このオプションにより生成されるファイルの詳細については、『開発ガイド』の Webサービスの生成に関する章を参照してください。

    Directory with local XSD files

    (表示されている場合)選択したWSDLファイルのタイプ定義が、インポートされるXSDファイルに従属している場合、オプションでそのコピーを含むローカルディレクトリを指定できます。WSDLファイルで指定された場所に基づきウィザードが特定のXSDファイルにアクセスできない場合、ローカルディレクトリでそのXSDファイルが検索されます。

    For more information    XSDファイルの詳細については、 WSDLの仕様を参照してください。

    Map complex XML types to Java types

    (表示されている場合)このオプションをオンにすると、選択されたWSDLファイルで(XMLスキーマにより)定義されている複雑なタイプを特定のJavaタイプにマップすることができます。

    ウィザードによりすべての複雑なXMLタイプをorg.w3c.dom.Element Javaタイプにマップする場合、このオプションをオフにします。

  2. (表示されている場合)[SOAP Options ]を指定します。

    オプション

    操作

    Target namespace

    生成されたスタブクラスおよびスケルトンクラスにより生成されるSOAPメッセージのターゲット名前空間を指定します。SOAPメッセージの送信時、メソッドおよびパラメータ名はこの名前空間に指定されます。

    デフォルト値を受け入れるか、名前空間に対して任意の文字列を指定できます。この機能には、SOAPメッセージの対象を指定する以外特別な意味はありません。

    WSDLファイルの生成時、ウィザードによりtargetNamespace定義に対しこの値が使用されます。

    Service address

    Webサービスにアクセスするためのバインドとして使用されるURLを指定します。ウィザードにより、生成される次のファイルにこのバインド情報が含まれます。

    • スタブクラス(xxx_Stub.java)およびサービス実装クラス(xxxServiceImpl.java)では、WebサービスにバインドするデフォルトのURLとして使用されます。

    • WSDLファイル(xxx.wsdl)では、サービス定義のSOAPアドレスとして使用されます。

    このオプションのデフォルト値には、選択されたWARプロジェクトの名前およびWebサービスに対してマップするサーブレットが含まれます。たとえば、次のように表示されます。

      http://localhost/WebServiceSample/MyObject
    

    WebサービスをNovell exteNd アプリケーションサーバに配備する場合、次のようにURLにターゲットデータベースの名前を挿入する必要があります。

      http://localhost/WebServiceSampleDB/WebServiceSample/MyObject
    

    Binding style

    次のいずれかを選択します。

    • Document style & literal encoding    この形式の場合、SOAPメッセージの本文には、交換されるXMLドキュメントおよびWSDLファイルのXMLスキーマでリテラルとして定義された要素へのメッセージパートのマップのみが含まれます。

    • RPC style & SOAP encoding    この形式の場合、SOAPメッセージの本文には、指定のエンコードルールを各メッセージパートのタイプに適用することによって受信者が解釈する必要があるアドホックな要素で個別にラップされた、引数および戻り値が含まれます。

    このオプションを選択する場合、使用するWebサービスに影響するあらゆるWebサービス環境の要件を考慮する必要があります。ほとんどの場合いずれのスタイルでも動作しますが、環境によっては特定のスタイルが必要です。

  3. Finish]をクリックします。

    First Previous Next Last ツールガイド  05/22/03 08:41:32 

Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC, a wholly owned subsidiary of Novell, Inc. All rights reserved.