このチュートリアルでは、Oracle JDeveloper 10.1.3.2とOracle Application Development Framework(Oracle ADF)コンポーネントを使用して、Siebel 8.0 Call CenterでWebアプリケーションを構築します。 Siebel Call Centerアプリケーションから作成されたWebサービスをJSFページのデータ・コントロールとして使用します。 目的は、Siebelアプリケーションからのデータを特注ユーザー・インタフェースに取り込む方法を説明することです。
20分
このチュートリアルでは、以下のトピックについて説明します。
| 概要 | |
| シナリオ | |
| 前提条件 | |
| JSFページの実行 | |
| まとめ | |
| 関連情報 |
このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。 (警告: この操作によって、同時にすべてのスクリーンショットがロードされるため、ご使用のインターネット接続によってはレスポンス時間が遅くなる場合があります。)
注: 各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順にあるアイコンの上にカーソルを置いてください。 スクリーンショットをクリックすると、非表示になります。
このアプリケーションによってSiebel Webサービスが起動します。 それには、Siebelによって作成されたWSDLファイルが必要です。 詳細は前提条件を参照してください。
Web Service Description Language(WSDL)拡張機能をもつファイルは、WSDLで記述されたWebサービス・インタフェースを含みます。 WSDLは、World Wide Web Consortiumで策定された標準XMLドキュメント型です。 WSDLファイルは、Webサービスのプロデューサとコンシューマ間でインタフェース情報を伝達する際に使用します。 WSDLファイルは、Webサービスを使用するためにクライアント・アプリケーションに必要なすべての情報を提供します。 WSDL記述は、クライアントがWebサービスの詳細な実装情報を知らなくても、Webサービスの機能を利用できるようにするものです。
WSDLファイルには、Webサービスのメソッドを起動するためにクライアントに必要なすべての情報が含まれています。
Webサービスをビジネス・サービス・テクノロジーとして使用する場合、モデル情報は、オラクル独自のアダプタ・クラス(シン)によって実装されるOracle ADFデータ・コントロール・インタフェースを介して、ビュー・レイヤーおよびコントロール・レイヤーに公開されます。
WSDLファイルに記述されたWebサービスは、JSFページを作成するためのデータ・コントロールとして使用するオペレーションを提供します。 WSDLファイルは3つのオペレーション(Insert、QueryByExample、QueryByID)を公開します。 このWSDLファイルからデータ・コントロールを作成し、QueryByIDオペレーションを公開します。これにより、Siebelで顧客アカウントの問合せを実行し、アカウント詳細を公開できます。
それから、JSFページを2つ作成します。利用可能なデータ・コントロールからQueryByIdオペレーションを実装するページと、問合せページで提供されたIDに基づいて詳細を返す第2のJSFページです。
このチュートリアルを始める前に、次のことを確認してください。
| 1. |
Oracle JDeveloper 10.1.3.2にアクセスできるか、またはインストール済みであること。 この製品は、Oracle Technology Networkからダウンロードできます。
|
| 2. |
デプロイされて実行中のBPEL Webサービスを使用してSOAにアクセスできること。 この必須の前提環境を設定するには、次のOracle by Example(OBE)の実施が必要です。 『Create, Deploy, and Test a BPEL Process to Create a Customer in Siebel Application』
|
| 3. |
次のリンクを右クリックし、コンテキスト・メニューから「対象をファイルに保存」を選択してCustomerAccount_80.wsdlファイルを任意のローカル・ディレクトリにダウンロードします。
|
| 4. |
JDeveloperを起動します。 解凍先のルート・ディレクトリ(<jdev_home>)にあるJDeveloperの実行可能ファイル「jdeveloper.exe」をダブルクリックします。
Migrate User Settingsダイアログ・ボックスが開いたら、「NO」をクリックします。 Tip of the Dayウィンドウを閉じます。
|
| 5. |
JDeveloper IDEが表示されます。
|
| 6. | 『Siebel Account Business ServiceでのインバウンドWebサービスの作成』チュートリアルに記載されている手順を実行します。 |
データ・モデルは、アプリケーションにデータ・アクセスおよび検証を提供します。 クライアントの実装に関係なく、データは常にモデルによって検証されます。 これによって、検証とビジネス・ルールをユーザー・インタフェースから明確に隔離することができるのです。
次に、JDeveloperでアプリケーションを作成し、さらにアプリケーション用のデータ・モデルを作成します。
| 新規アプリケーションおよびプロジェクトの作成 | ||
| WSDLベースのデータ・コントロールの作成 | ||
JDeveloperでは、常にアプリケーションに含まれるプロジェクトを使用して作業をおこないます。 アプリケーションは、制御構造の最上位にあります。
Oracle JDeveloperのプロジェクトは、関連するファイルを論理的にグループ化する構成となっています。 複数のプロジェクトをアプリケーションに追加し、ソース・コードを簡単に編成、アクセス、変更、および再利用できます。 Applications Navigatorでは、プロジェクトは階層内の2番目のレベルとして、アプリケーションの下に表示されます。
表示用に記述されたコードからモデル・コードを分離するには、プロジェクトを使用することがベスト・プラクティスであると考えられています。 このチュートリアルでは、データ・コントロール用に1つのプロジェクトを作成し、後にJSFビュー用にもう1つのプロジェクトを作成します。
コンポーネントを作成する前に、アプリケーションとプロジェクトを作成する必要があります。 それには、以下の手順に従います。
| 1. | Applications Navigatorで、「Applications」ノードを右クリックして、コンテキスト・メニューから「New Application」を選択します。 |
| 2. | Create Applicationダイアログ・ボックスで、アプリケーション名にSiebel_WS_Appを入力します。 アプリケーション名を入力すると、ディレクトリ名が自動的に変更されます。 アプリケーション・パッケージの接頭辞としてoracleと入力します。 アプリケーション・テンプレートのドロップダウン・リストから、「No Template [All Technologies]」を選択します。 「OK」をクリックします。 |
| 3. | Create Projectダイアログで、プロジェクト名としてDataModelと入力し、「OK」をクリックします。
|
| 4. | アプリケーション・ナビゲータは、次のように表示されます。
|
この項では、Webサービスに基づいたデータ・コントロールを作成します。 このWebサービスはSiebelアプリケーションから作成されましたが、BPEL、JD Edwards、PeopleSoftなど別のアプリケーションで作成されたWebサービスも簡単に使用できます。
データ・コントロールを作成するには、以下の手順を実行します。
| 1. | Applications Navigatorで「DataModel」ノードを右クリックし、コンテキスト・メニューから「New」を選択します。
|
| 2. | New Galleryで、カテゴリの「Business Tier」→「Web Services」を選択し、「Web Service Data Control」項目をダブルクリックします。
|
| 3. | Create Web Service Data Controlウィザードで、「Next」をクリックしてWelcomeページをスキップします。
|
| 4. | ステップ1では、このデータ・コントロールの名称としてSiebel_WS_CustomerAccountと入力してから、URLフィールドのとなりにある「Browse」ボタンをクリックします。
Select WebService Descriptionで、SiebelCustomerAccount_80.wsdlファイルを含むディレクトリを探します。 注: これは、前提条件のOBE実行時に作成するWSDLです。 詳細については前提条件を参照してください。
「Open」をクリックします。 ウィザードのServiceフィールドにURLが生成されたことを確認します。 「Next」をクリックします。
|
| 5. | ステップ2では、このWebサービスで利用可能なすべてのオペレーションが表示されます。 このOBEでは、1つのオペレーションを実行します。 「AccountQueryById」を選択し、「Add」ボタンを使用して、その選択を「Selected」ペインに追加します。
「Next」をクリックします。
|
| 6. | ステップ3と4で「Next」をクリックしてから、ステップ5で「Finish」をクリックします。
|
| 7. | Applications Navigatorで、存在するノードを開き、作成された新しいエントリを表示します。 アプリケーション・ナビゲータは、次のように表示されます。
|
| 8. | Save Allアイコン「
|
複数のプロジェクトを使用してモデルをUIから分離することがベスト・プラクティスであると考えられているため、JSFビュー用にもう1つのプロジェクトを作成します。
それには、以下の手順に従います。
| 1. | アプリケーション・ナビゲータで「Siebel_WS_App」ノードを右クリックし、コンテキスト・メニューから「New Project」を選択します。 |
| 2. | New Galleryで、「Empty Project」項目を選択します。 「OK」をクリックします。 |
| 3. | Create Projectダイアログで、Project NameにUserInterfaceを入力し、「OK」をクリックします。
|
| 4. | Applications Navigatorで、「UserInterface」ノードを右クリックし、コンテキスト・メニューから「New」を選択します。
|
| 5. | New Galleryで、「Web Tier」ノードを開き、「JSF」を選択します。 Itemsペインで、「JSF Page Flow & Configuration (faces-config.xml)」を選択します。
「OK」をクリックします。
|
| 6. | Create JSF Configuration Fileで、「OK」をクリックしてデフォルト値を受け入れます。
|
| 7. | 空のページ・フロー・ダイアグラムが開きます。 ダイアグラム・エディタの右側にComponent PaletteとData Control Paletteがあります。 これを使用して、JSFナビゲーション・モデルのコンポーネントを作成します。
Save Allアイコン「
|
| 8. | Applications Navigatorは、次のように表示されます。
|
この項では、Oracle JDeveloperのJSFナビゲーション・モデラーを使用して、アプリケーションのページとそのページ間の移動を図式的に作成します。
| 1. | Component PaletteのJSF Navigation Diagramライブラリで、JSF Page「
ページの名称をQueryByIDに変更します。 |
| 2. | コンポーネント・パレットから、別の「JSF Page」をドラッグし、前のアイコンの横にドロップします。 ページの名前をShowResultに変更します。
|
| 3. | コンポーネント・パレットでJSF Navigation Case「 |
| 4. | デフォルト・ラベル(「success」)をクリックして、toResultと上書きします。 |
| 5. | JDeveloperは、faces-config.xmlファイルの3つのビューを提供します。 ここではダイアグラム・ビューが使用されていますが、同じ情報には、宣言ダイアログからのアクセスや、ソースからの直接アクセスも可能です。 画面の下部にある「Overview」タブをクリックします。 左側の表の「Navigation Rules」をクリックします。 ダイアグラムに作成したルールが、表にリストされたことを確認してください。
画面の下部にある「Source」タブをクリックします。 <from-view-id>タグはソース・ページを識別し、<to-view-id>タグはリンク先ページを識別します。
|
| 6. | ダイアグラム・ビューに切り替えて、Component Paletteの「JSF Navigation Case」を選択します。 ソースJSFページのアイコン(「ShowResult」)をクリックし、ナビゲーション用のリンク先JSFページのアイコン(「QueryByID」)をクリックします。 |
| 7. | デフォルト・ラベル(「success」)をクリックして、toQueryと上書きします。
|
| 8. | これで、ダイアグラムは次のように表示されます。
|
| 9. | Save Allアイコン「
|
次のいくつかのステップでは、Oracle ADF Facesを使用してQueryByIdページを作成します。
| 1. | Page Flowダイアグラムで、「QueryById」アイコンをダブルクリックし、Create JSF JSPウィザードを起動します。 |
||||
| 2. | 「Next」をクリックして、Create JSF JSPウィザードのWelcomeページをスキップします。
|
||||
| 3. | ウィザードのステップ1で、「JSP Document (*.jspx)」オプションを選択します。
「Next」をクリックします。
|
||||
| 4. | ステップ2で、「Do Not Automatically Expose UI Components in a Managed Bean」が選択されていることを確認します。
「Next」をクリックします。
|
||||
| 5. | ステップ3で、次のライブラリが選択されていることを確認します。 ADF Faces Components 10_1_3_2_0
「Next」をクリックしてから、「Next」をまたクリックし、「Finish」をクリックしてページを作成します。
|
||||
| 6. | エディタのDesignタブに空のJSFページが開きます。
|
||||
| 7. | コンポーネント・パレットからADF Faces Coreライブラリの「Panel Page」コンポーネントをこのページへドラッグします。
|
||||
| 8. | Property Inspectorペインで、TitleをTitle 1からQuery By Idに変更します。
|
||||
| 9. | Componentパレットから、「Panel Border 」を先ほど変更したタイトルのすぐあとにドラッグします。
|
||||
| 10. | 「Data Controls」パレットを開き、「Siebel_WS_CustomerAccount」ノードを開きます。 「AccountQueryById(String)」ノードをページの「start」ファセットにドラッグ・アンド・ドロップします。
ポップアップ・メニューから、「Create」→「Parameters」→「ADF Parameter Form」を選択します。
|
||||
| 11. | Edit Form Fieldsで「OK」をクリックします。
|
||||
| 12. | ページで生成された「AccountQueryById」ボタンを選択し、Property Inspectorペインで以下のプロパティを変更します。
|
||||
| 13 | 入力値に対応する入力フィールドを選択し、Property InspectorでLabelプロパティをAccount Id:に変更します。
|
||||
| 14. | この時点で、ページは次のように表示されます。
|
||||
| 15. | Save Allアイコン「 |
次のいくつかのステップでは、Oracle ADF Facesを使用してdisplayResultページを作成します。
| 1. | Page Flowダイアグラムに戻り(「faces-config.xml 」タブをクリック)、「ShowResult」アイコンをダブルクリックしてページ・ウィザードを起動します。
|
| 2. | 「Next」をクリックしてWelcomeページをスキップし、ウィザードのステップ1で「JSP Document (*.jspx)」オプションを選択します。
「Next」をクリックします。
|
| 3. | ステップ2で、「Do Not Automatically Expose UI Components in a Managed Bean」が選択されていることを確認します。
「Next」をクリックします。
|
| 4. | ステップ3で、次のライブラリが選択されていることを確認します。 ADF Faces Components 10_1_3_2_0
「Next」をクリックしてから、「Next」をまたクリックし、「Finish」をクリックしてページを作成します。
|
| 5. | エディタのDesignタブに新しい空のページが開きます。
|
| 6. | コンポーネント・パレットから「ADF Faces Core」ライブラリの「Panel Page」コンポーネントをこのページへドラッグします。
|
| 7. | Property Inspectorペインで、TitleをTitle 1からDetails for the IDに変更します。
|
| 8. | Componentパレットから、「Panel Border 」を先ほど変更したタイトルのすぐあとにドラッグします。
|
| 9. | Data Controlパレットで、「AccountQueryById」→「Return」→「SiebelMessage」→「ListofAccountInterface」の順に開き、「Account」ノードを選択します。 そのノードを「start」ファセットにドロップします。
ポップアップ・メニューから、「Create」→「Parameters」→「ADF Parameter Form」の順に選択します。
|
| 10. | Edit Form Fieldsで「Delete」ボタンを使用し、提案されたフィールドを以下のリストに従って制限します。 AccountID 「Include Submit Button」チェック・ボックスをチェックします。
「OK」をクリックします。
|
| 11. | 「Submit」ボタンを選択し、Property InspectorでタイトルをBack to Queryに変更して、Actionフィールドのリストから「toQuery」を選択します。
. |
| 12. | 問合せページのデザイン・ビューは次のように表示されます。
|
| 13. | Save Allアイコン「
|
アプリケーションを構築したので、次にテストをおこないます。 組込みのアプリケーション・サーバーで、Oracle JDeveloperでJSFページを簡単にテストできます。 JDeveloperの内部でページをテストすると、このサーバーが自動的に起動します。
| Siebel Account値への問合せ | ||
| JSFページのテスト | ||
IDを使用してSiebel Accountを問い合わせる前に、Siebelインスタンスで利用可能なIDを特定する必要があります。 次の項を実行するには、Siebel Call Centerにアクセスする必要があります(必要であれば、前提条件項を参照してください)。
| 1. | 関連するUser IDとPasswordの組合せを使用して、Siebel Call Centerへログインします。
|
| 2. | Site Mapを使用して、Accounts Listへ移動します。 |
| 3. | 「Accounts」リンクをクリックします。
|
| 4. | 「Accounts List」リンクをクリックします。
|
| 5. | 返されたリストから、問い合わせるアカウントをハイライトします。 |
| 6. | トップ・メニューから「Help」→「About Record」へ移動します。 |
| 7. | Row #フィールドでID値を探します。
返された値をメモします。
|
| 1. | ページをテストするため、ページ・フロー・ダイアグラムに戻ります。 「QueryById」ページ・アイコンを右クリックし、コンテキスト・メニューから「Run」を選択します。
|
| 2. | ページがデフォルトのブラウザにロードされ、次のように表示されます。
|
| 3. | IDフィールドで、メモした値をROW #フィールドに入力します(この例では1-1PQ9)。
「Submit」をクリックします。
|
| 4. | Detailsページには、関連するアカウントの詳細情報が表示されます。
「Back to Query」をクリックして、前のページに新しい問合せを入力します。
|
| 5. | 別の値をテストできます。
|
| 6. | これでOBEは完了です。 ブラウザ・ウィンドウを閉じることができます。
|
このチュートリアルでは、WSDLファイルをデータ・コントロールとして使用し、Webサービスによるオペレーションを実行するJSFページを作成することで、エンド・ツー・エンドのアプリケーションを作成しました。 このチュートリアルで学習した内容は、以下のとおりです。
| WSDLファイルに基づいたデータ・モデルの構築 | |
| ページ・フローの作成 | |
| 問合せページの作成 | |
| 結果ページの作成 | |
| JSFページの実行 |
Oracle ADFおよびOracle JDeveloperについて、詳しくは以下を参照してください。
OTN WebサイトのOracle Application Developer Frameworkホームページ |
|
OTN WebサイトのOracle JDeveloperホームページ |