ウィザードを使用して、アプリケーションとプロジェクト、初期XSDドキュメントを素早く作成します。 作成するURLサービス・データ・コントロールは、ライブRSSフィード用です。 データ・コントロールを作成する前に、初期XSDドキュメントにサンプル・コードを追加して、URLサービスのXMLスキーマを定義します。
詳細を表示/非表示詳細表示
目的 所要時間 アプリケーション
このチュートリアルでは、RSSフィードの構造を定義するXMLスキーマから、URLデータ・コントロールを作成する方法を示します。これから作成するアプリケーションの完成版を確認するには、「Download」ボタンをクリックして最終的なアプリケーションのzipファイルをダウンロードし、JDeveloperのmyworkフォルダに解凍してください。 40分 urldatacontrolapp.zipをダウンロード
注:完全なアプリケーションをダウンロードする場合は、詳細を表示/非表示詳細表示
ステップ1:新規アプリケーションとプロジェクトの作成
  1. メイン・メニューから「File」→「New」を選択します。New Galleryで、「General」カテゴリを開き、「Applications」を選択します。Itemsリストで「Custom Application」を選択し、「OK」をクリックします。

    New Gallery、Applications
  2. JDeveloperアプリケーションは、組織構造の最上位レベルです。アプリケーションの開発中に、操作しているオブジェクトの情報がここに格納されます。詳細を表示/非表示詳細表示
  3. この例に合わせるため、アプリケーション名としてURLDataControlAppと入力し、「Next」をクリックします。

    カスタム・アプリケーションの作成
  4. 初期プロジェクト構造(アプリケーションの作業領域内の名前付きプロジェクト・フォルダ)および追加されるアプリケーション・ライブラリは、選択したアプリケーション・テンプレートによって決まります。詳細を表示/非表示詳細表示
  5. プロジェクト名にModelと入力します。

    カスタム・アプリケーションの作成、プロジェクト名の入力

  6. Finish」をクリックします。

    アプリケーション・ナビゲータのProjectsパネルは、次のようになります。

    新規プロジェクト作成後のアプリケーション・ナビゲータ

  7. テンプレートから作成された新規アプリケーションは、プロジェクト階層に分割されてアプリケーション・ナビゲータに表示されます。各プロジェクトには関連する機能が設定されています。詳細を表示/非表示詳細表示
ステップ2: XMLスキーマの作成
  1. URLサービス・データ・コントロールを作成する前に、使用するURLサービスを決定し、URLサービスのXMLスキーマを定義する必要があります。 ステップに正確に従うことができるように、チュートリアル全体を通じて、手順で示した値を入力してください。 例で使用するURLサービスについて詳しくは、次の情報をお読みください。

  2. この例では、ライブRSSフィードのコンテンツを取得し、データバインドOracle ADF Facesコンポーネントを使用してWebページに表示します。詳細を表示/非表示詳細表示
  3. メイン・メニューから「Tools」→「Preferences」を選択します。 Preferencesダイアログ左側の「Web Browser and Proxy」をクリックし、右側の「Use HTTP Proxy Server」を選択して、サーバー・プロキシを使用してインターネットにアクセスするようにします。 組織のプロキシ・サーバーのURLまたはDNS名、マシンがプロキシ・サーバーにアクセスするために使用するポート番号を入力します。

  4. 外部Webサービスにアクセスするときに、マシンがファイアウォールの内側にある場合は、JDeveloperのプロキシ設定を変更する必要があります。詳細を表示/非表示詳細表示
  5. XMLスキーマを作成する前に、JDeveloperでHTTP Analyzerを開いて、URLのXMLコンテンツを表示します。 次に、返されたコンテンツのXML要素を使用して、XMLスキーマの構造を定義します。 必要に応じて、このステップの10番目にスキップしてもかまいません。

  6. メイン・メニューから「Tools」→「HTTP Analyzer」を選択します。

  7. HTTP Analyzerを使用すると、HTTPリクエスト/レスポンスのパッケージ・ペアのコンテンツを確認できます。詳細を表示/非表示詳細表示
  8. HTTP Analyzerのツール・ウィンドウで、「runアイコンStart HTTP Analyzerをクリックします。

  9. create newアイコンCreate New Requestをクリックして、テスト・ウィンドウを開きます。 HTTP Analyzerのテスト・ウィンドウ下部にある「HTTP Content」をクリックします。

  10. http://www.oracle.com/ocom/groups/public/@otn/documents/webcontent/132361.xmlURLフィールドに入力します。 次に、Methodドロップダウン・リストから「GET」を選択します。

    HTTP Analyzerのテスト・ウィンドウとログ・ウィンドウ

  11. send requestアイコンSend Requestをクリックします。 Message Content Warningダイアログが表示されたら、「Yes」をクリックします。

    Responseペインにニュース・ページのXMLコンテンツが表示されます。

    HTTP Analyzer、返されたレスポンス
  12. XMLフォームの予測されるレスポンスをもとに、JDeveloper News RSSフィードのXMLスキーマを設計できます。詳細を表示/非表示詳細表示
  13. red squareアイコンStopをクリックして、HTTP Analyzerを終了します。 以降、このチュートリアルでは使用しないため、HTTP Analyzerウィンドウを閉じます。

  14. アプリケーション・ナビゲータで「Model」プロジェクトを右クリックし、「New」→「General」→「XML」→「XML Schema」の順に選択して、「OK」をクリックします。

    New Gallery、General、XML

  15. Create XML Schemaダイアログで、newsrssfeed.xsdというファイル名を入力します。

  16. Directoryフィールドで、Modelの後に\srcと追加します(例:<JDEVELOPER_HOME>\jdeveloper\mywork\URLDataControlApp\Model\src)。「OK」をクリックします。

    Create XML Schemaダイアログ

  17. XSDスキーマ・エディタで、エディタ・ウィンドウの下部にある「Source」をクリックすると、XMLエディタに切り替わります。

    XMLエディタ
  18. XMLスキーマ定義(XSD)とも呼ばれるXMLスキーマ言語は、XMLドキュメントの構造を定義します。詳細を表示/非表示詳細表示
  19. 最初の行の後、<xsd:schema>要素全体とその子要素を次のコードに置き換えます。

  20. Save AllアイコンSave Allをクリックして作業内容を保存します。

    XMLスキーマの作成ステップを完了すると、アプリケーション・ナビゲータのProjectsパネルは次のように表示されます。

    アプリケーション・ナビゲータ、作成されたXSDファイル

  21. 作成したXMLスキーマ・ドキュメントの構造、コンテンツ、セマンティックを視覚表示するには、エディタ・ウィンドウの「Design」をクリックして、XSDスキーマ・エディタに切り替えます。詳細を表示/非表示詳細表示
ステップ3:URLサービス・データ・コントロールの作成
  1. アプリケーション・ナビゲータで「Model」プロジェクトを右クリックし、「New」→「Business Tier」→「Web Services」→「URL Service Data Control」の順に選択して、「OK」をクリックします。

    New Gallery、Business Tier、Web Services
  2. URLサービス・データ・コントロールは、URLでアクセス可能なXMLファイルなど、URLサービス用のOracle ADFデータ・コントロールです。詳細を表示/非表示詳細表示
  3. ウィザードのステップ1のData Sourceで、Newsというデータ・コントロール名を入力します。「Next」をクリックします。

    Create URL Service Data Controlウィザード、Data Source

  4. ステップ2のConnectionで、JDevNewsという接続名をNameフィールドに入力します。

  5. URL Endpointフィールドに、ライブRSSフィードへのURLを入力します。

    例: http://www.oracle.com/ocom/groups/public/@otn/documents/webcontent/132361.xml

  6. Authentication TypeNoneに、Http MethodGETになっていることを確認します。 確認したら、「Next」を2回クリックします。

    Create URL Service Data Controlウィザード、Connection

  7. ステップ4のData Formatで、ドロップダウン・リストから「XML」を選択します。

  8. XSD URLフィールドに、file:///C:/<JDEVELOPER_HOME>/jdeveloper/mywork/URLDataControlApp/Model/src/newsrssfeed.xsdと入力します。ここで、<JDEVELOPER_HOME>は、JDeveloperインストールの場所を表します。「Next」をクリックします。

    Create URL Service Data Controlウィザード、Data Format
  9. JDeveloper RSSフィード・ページはXMLドキュメントなので、URLデータソースの形式にXMLを選択します。詳細を表示/非表示詳細表示
  10. ウィザードのステップ5で、「Test URL Connection」をクリックします。

    ダイアログにテキストURL Test:URL Successfulが表示されます。

    Create URL Service Data Controlウィザード、Finish

  11. Finish」をクリックし、次に「Save AllアイコンSave Allをクリックして、作業内容を保存します。

    プロジェクトにデータ・コントロール定義ファイル(DataControls.dcx)が追加され、概要エディタでファイルが開きます。

    DataControls.dcxの概要エディタ

  12. アプリケーション・ナビゲータで、「Data Controls」パネルを展開します。

    作成したNewsデータ・コントロールが表示され、アプリケーションで利用可能になっています。 作成したデータ・コントロールが表示されない場合は、パネル・ツールバーの「refreshアイコンRefreshをクリックします。

    アプリケーション・ナビゲータ、Data Controlsパネル

  13. Modelプロジェクトに追加された新しいファイルは、次のとおりです。詳細を表示/非表示詳細表示
ステップ4:JSFページの作成
  1. メイン・メニューから、「File」→「New」→「General」→「Projects」→「Custom Project」を選択して、「OK」をクリックします。

    New Gallery、Custom Project

  2. プロジェクト名にViewと入力します。 次に、Availableリストから「ADF Faces」を選択し、「shuttleアイコン」を選択して、Selectedリストに移動します。

    Create Custom Projectウィザード
  3. プロジェクト用の機能を選択すると、New Galleryによって提示される選択肢をフィルタで選別することが可能になり、実行している作業の種類に適した選択肢だけを表示できます。詳細を表示/非表示詳細表示
  4. Finish」をクリックします。

    アプリケーション・ナビゲータにViewプロジェクトが表示されます。

    アプリケーション・ナビゲータ、作成されたViewプロジェクト

  5. アプリケーション・ナビゲータで「View」プロジェクトを右クリックし、「New」→「Web Tier」→「JSF/Facelets」→「Page」の順に選択して、「OK」をクリックします。

    New Gallery、JSF/Faceletsページ

  6. Create JSF Pageダイアログで、NewsPage.jsfというファイル名を入力します。ドキュメント・タイプとしてFaceletsが選択されていることを確認します。

    Create JSF Pageダイアログ
  7. JavaServer Facesを使用するアプリケーション向けに作成するJSFページには、Faceletsドキュメント(ファイル拡張子は.jsf)、またはXML構文で記述されたJSPドキュメント(ファイル拡張子は.jspx)を使用できます。詳細を表示/非表示詳細表示
  8. Page Layoutページで「Blank Page」を選択します。Managed Beanページで、「Do Not Automatically Expose UI Components in a Managed Bean」を選択します。

  9. Create JSF Pageダイアログでは、新しいページのルック・アンド・フィールの一部を任意で定義でき(PageLayoutタブ)、また、ページ上のコンポーネントをマネージドBeanで公開するかどうかを指定できます(Managed Beanタブ)。詳細を表示/非表示詳細表示
  10. OK」をクリックします。

    デフォルトでは、ビジュアル・エディタに新しいJSF Faceletsページが表示されます。

    ビジュアル・エディタ

  11. 新しいJSFページをFaceletsドキュメント・タイプ(ファイル拡張子は.jsf)にすると、初期ページ構造が自動的に作成されます。詳細を表示/非表示詳細表示
  12. コンポーネント・パレットのADF FacesページのLayoutパネルで、「borderlayoutアイコンPanel Stretch Layoutをドラッグして、ビジュアル・エディタの空白ページにドロップします。

    ビジュアル・エディタにコンポーネントをドラッグすると、Formという名前の長方形の領域が表示されます。これは、今ドラッグしているコンポーネントがそのターゲット・コンポーネント内に挿入されることを意味しています。

    ビジュアル・エディタ、フォームに挿入

  13. Save AllアイコンSave Allをクリックして作業内容を保存します。

  14. JSFページの作成ステップが完了すると、アプリケーション・ナビゲータにはViewプロジェクトが次のように表示されます。詳細を表示/非表示詳細表示
ステップ5: JSFページへのデータ・コントロールの追加
  1. Data Controlsパネルで、「News」→「loadData()」→「Return」→「rss」→「channel」の順に展開します。

    Data Controlsパネルの展開
  2. データ・コントロールはビジネス・サービスを表示したものであり、コレクション、属性、メソッドなど、利用可能なビジネス・オブジェクトの階層表示から成ります。詳細を表示/非表示詳細表示
  3. item」をクリックして、ビジュアル・エディタのページのcenterファセットにドラッグします。Createコンテキスト・メニューから、「Table」→「ADF Read-only Table」を選択します。

    Createコンテキスト・メニュー、Table

  4. Edit Table Columnsダイアログで「Enable Sorting」を選択します。

    Edit Table Columnsダイアログ

  5. その他のデフォルト値はそのままにして、「OK」をクリックします。

    ビジュアル・エディタには次のようなページが表示されます。

    ビジュアル・エディタのページ
  6. Data Controlsパネルを使用してUIコンポーネントを作成すると、選択したデータ・コントロールにコンポーネントをバインドするための各種コードとオブジェクトがJDeveloperによって自動的に作成されます。詳細を表示/非表示詳細表示
  7. アプリケーション・ナビゲータで「NewsPage.jsf」を右クリックし、「Run」を選択します。

    Create Default Domainダイアログが表示されたら、PasswordフィールドとConfirm Passwordフィールドにデフォルト・パスワード(例:weblogic1)を入力し、「OK」をクリックします。

    次のようなページがブラウザに表示されます。

    ブラウザのページ

  8. デフォルトでJDeveloperは、IDEにバンドルされたOracle WebLogic Serverのユーザー固有のインスタンスを参照する、Integrated WebLogic Serverという名前の統合サーバーを自動的に構成します。詳細を表示/非表示詳細表示
ステップ6:レイアウトの拡張
ADF Facesは、多くの便利なコンポーネントをサポートし、プラグインの不要なWebブラウザでの豊富なユーザー・エクスペリエンスを実現します。 ページ・レイアウトを改善するため、表の列幅を広げて、列の1つを削除します。詳細を表示/非表示詳細表示
  1. アプリケーション・ナビゲータのViewプロジェクトで、「NewsPage.jsf」を選択します。 Structureウィンドウで、af:tableコンポーネントが表示されるまで、コンポーネントの階層を展開します。

  2. af:tableを展開したら、第1列のコンポーネント「af:column - #{bindings.item.hints.title.label}」を展開します。

    Structureウィンドウ、展開した表コンポーネント
  3. Data Controlsパネルを使用して、表をJSFページにドロップすると、ADF Faces Tableコンポーネントが挿入されます。詳細を表示/非表示詳細表示
  4. コンポーネント・パレットのADF FacesページのGeneral Controlsパネルで、「linkアイコンLink (Go)をドラッグし、Structureウィンドウの最初のaf:columnコンポーネントにドロップします。

    すると、af:goLinkがStructureウィンドウのaf:outputTextの下に挿入されます。

    Structureウィンドウ、挿入されたgoLink

  5. ニュース・タイトルの列をテキスト・リンクに変換するため、Oracle ADF Output Textコンポーネントの最初の列をGo Linkコンポーネントに置き換えます。詳細を表示/非表示詳細表示
  6. 先ほど追加したGo Linkコンポーネントのプロパティ・インスペクタで、Textフィールドの端にあるproperty menuアイコンドロップダウン・メニューから「Expression Builder」を選択します。

    プロパティ・インスペクタ、ドロップダウン・メニュー

  7. Expressionボックスで、デフォルト・テキストのgoLink 1を削除します。 次に、Variablesの下のボックスで、「JSP Objects」→「row」の順に展開して、「title」を選択します。

    #{row.title}が表示されます。

    Expression Builder

  8. OK」をクリックします。

    #{row.title}は、プロパティ・インスペクタのTextフィールドに移入されます。

  9. 同じGo Linkコンポーネントのプロパティ・インスペクタで、Destinationフィールドの端にあるproperty menuアイコンドロップダウン・メニューから「Expression Builder」を選択します。

  10. VariablesボックスのJSP Objectsrowで、「link」を選択して、「OK」をクリックします。

    #{row.link}は、プロパティ・インスペクタのDestinationフィールドに移入されます。

    Go Linkコンポーネントは、最初と2番目の列(それぞれ、titleとlink)で、OutputTextコンポーネントと同じ属性値にバインドされています。

    プロパティ・インスペクタ、Go Linkコンポーネント

  11. 同じGo Linkコンポーネントのプロパティ・インスペクタで、TargetFrameドロップダウン・リストから「_blank」を選択します。

    この操作により、リンクが実行時に選択されたときに新しいブラウザ・タブまたはウィンドウが開きます。

  12. Structureウィンドウで、af:goLinkの上にある「af:outputText」を選択して、[Delete]キーを押し、選択したコンポーネントを削除します。OutputTextコンポーネントはもう必要ありません。

    最初のaf:columnコンポーネントは次のように表示されます。

    Structureウィンドウ、goLinkの上にある削除されたoutputText

  13. Structureウィンドウで、2番目の列コンポーネント「af:column - #{bindings.item.hints.link.label}」を選択して、[Delete]を押し、選択した列を削除します。リンクの列はもう必要ありません。

    これで、af:columnコンポーネントは3つだけになります。

    Structureウィンドウ、選択されているdescription列

  14. Structureウィンドウで、列コンポーネントaf:column - #{bindings.item.hints.description.label}が選択されていることを確認します。 プロパティ・インスペクタのAppearanceセクションで、Widthの値を200に変更します。

  15. Structureウィンドウで、最初の列コンポーネント「af:column - #{bindings.item.hints.title.label}」を選択します。 プロパティ・インスペクタのAppearanceセクションで、Widthの値を300に変更します。

    ビジュアル・エディタには次のような表が表示されます。

    ビジュアル・エディタ、3つの列の表

  16. アプリケーション・ナビゲータのViewプロジェクトで、「NewsPage.jsf」を右クリックして、「Run」を選択します。

    次のようなページがブラウザに表示されます。

    ブラウザのページ

  17. タイトル・テキスト・リンクの1つをクリックしてください。 リンクが新しいブラウザ・タブまたはウィンドウで開きます。詳細を表示/非表示詳細表示
ステップ7:ラベルの設定
  1. エディタ・ウィンドウで、「DataControls.dcx」タブをクリックして、DCX概要エディタを前面に表示します。

    DCXファイルがまだ開いていない場合は、アプリケーション・ナビゲータのModelプロジェクトの「DataControls.dcx」をダブルクリックして、ファイルを開きます。

    概要エディタ、DataControls.dcxファイル

  2. News」→「loadData()」→「Return」→「rss」→「channel」の順に展開します。 次に、「item」を選択し、「editアイコンEditをクリックして、概要エディタを別に開きます。

    DataControls.dcxの概要エディタ

  3. loadData_Data_item.xml概要エディタで、左側の「Attributes」をクリックします。

    概要エディタ、loadData_Data_item.xml

  4. Attributes表でtitleを選択した状態で、「UI Hints」タブをクリックします。 次に、LabelフィールドにNews Titleと入力します。

    概要エディタ、Attributes、UI Hints
  5. Oracle ADFコントロール・ヒントは、JavaBeansベースのビジネス・サービス・データ項目をあらゆるクライアント・タイプに一貫した方法でレンダリングするための一元メカニズムを提供します。詳細を表示/非表示詳細表示
  6. 手順を繰り返して、属性descriptionpubDateのUIヒント・ラベルを追加します。ラベル・テキストDescriptionDateをそれぞれ使用します。

  7. ビジネス・サービス・レベルでコントロール・ヒントを追加すると、プロジェクトのテキスト・リソースを含んだ.propertiesファイルが作成されます。詳細を表示/非表示詳細表示
  8. アプリケーション・ナビゲータのViewプロジェクトで、「NewsPage.jsf」を右クリックして、「Run」を選択します。

    ブラウザのページに、入力した新しいラベルが表示されます。

    ブラウザのページ、ラベル

  9. 追加した新しいラベルは、列ヘッダーに表示されます。詳細を表示/非表示詳細表示
まとめ
このチュートリアルでは、XMLスキーマからURLサービス・データ・コントロールを作成しました。このチュートリアルで学習した内容は、以下のとおりです。 Oracle ADFデータ・バインディングとデータバインド・アプリケーションについて詳しくは、以下を参照してください。

ブックマーク 印刷 すべて表示 | すべて非表示
トップへ戻る

このページはお役に立ちましたか。



Copyright © 2011, Oracle and/or its affiliates.All rights reserved.