ヘッダーをスキップ
Oracle® Fusion Middleware WebCenter Sites開発者ガイド
11gリリース1 (11.1.1.8.0)
E49681-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

73 WEMフレームワーク: カスタムRESTリソースの開発

この章には次の項が含まれます。

73.1 Recommendationsサンプル・アプリケーション

「Recommendations」サンプル・アプリケーションは、WebCenter SitesおよびSatellite ServerのRESTリソースを作成する方法を示しています。アプリケーションは、GETおよびPOST操作で、新しいRESTリソースsample/recommendations/<id>を登録します。これによって、静的リスト推奨を取得し変更できます。また、アプリケーションは、Satellite Serverキャッシング・システムをどのように活用できるかについても示しています。

この項の内容は、次のとおりです。

73.1.1 アプリケーションのビルドおよびデプロイ

  1. 「Recommendations」サンプル・アプリケーションは、WebCenter Sitesインストール・ディレクトリ内のMisc/Samplesフォルダにあります。recommendationsに移動し、build.propertiesファイルを編集します。cs.webapp.dirおよびss.webapp.dirプロパティに適切なパスを指定します。

  2. recommendationsフォルダでApache antを実行します。これにより、サンプル・アプリケーションのビルドとデプロイが行われます。

  3. catalogmoverアプリケーションを起動します。「サーバー」「接続」メニューを使用して、WebCenter Sitesに接続します。「カタログ」→「カタログの自動インポート」に移動し、src\main\schema\elements.zipファイルを選択します。ACLのリストを指定する場合は、xceladminxceleditorを追加します。

  4. WebCenter Sites Webアプリケーション・フォルダに移動します。WEB-INF/classes/custom/RestResource.xmlファイルを編集します。recommendationServicerecommendationConfigおよびresourceConfigsの各Beanを非コメント化します。

  5. Satellite Server Webアプリケーション・フォルダに移動します。WEB-INF/classes/custom/RestResource.xmlファイルを編集します。recommendationServicerecommendationConfigおよびresourceConfigsの各Beanを非コメント化します。

  6. WebCenter SitesおよびSatellite Serverを再起動します。

73.1.2 アプリケーションのテスト

URL http://<hostname>:<port>/<contextpath>/REST/sample/recommendations/<recommendationid>に対する既存の静的リスト・リコメンデーションIDを使用します(または新しいリコメンデーションを作成します)。WebCenter SitesおよびSatellite Serverの各インストールで同じURLを使用します。たとえば、http://localhost:8080/cs/REST/sample/recommendations/1266874492697を使用します。WebCenter SitesおよびSatellite ServerのXMLレスポンスを確認します。

73.2 RESTリソースの作成

この項の内容は、次のとおりです。

73.2.1 アプリケーションの構造

「Recommendations」サンプル・アプリケーションは、独自のRESTリソースを作成する過程を通じて手順を説明することを目的に作成されています。

図73-1 「Recommendations」サンプル・アプリケーション

図73-1の説明が続きます
「図73-1 「Recommendations」サンプル・アプリケーション」の説明

  • スキーマ・ファイル: src/main/schema

    • elements.zipには、サンプル・エレメントが含まれます。Satellite Serverでキャッシュ目的に使用されます。

    • jaxb.bindingは、JAXBデフォルト・バインディングのカスタマイズです。Beanの生成プロセスで使用されます。

    • recommendation.xsdは、RecommendationService BeanのXMLスキーマです。

  • Javaソース・ファイル: src/main/java/ ... /sample

    • RecommendationResourceには、RESTリソース実装が含まれます。これは、WebCenter SitesとSatellite Serverの両方で使用されます。

    • RecommendationServiceは、RecommendationResourceクラスの機能を提供するインタフェースです。これは、リソースがローカル(WebCenter Sites上)またはリモート(Satellite Server上)のいずれでホストされているかによって、異なる方法で実装されます。

    • beans/*クラスは、Java xjcコンパイラを使用して生成されます。これらのクラスは、アプリケーションに事前にパッケージされています。Beanを再生成する場合(recommendation.xsdファイルを変更する場合)は、build.xmlのantタスク「generate」を実行します。

    • LocalRecommendationServiceは、RecommendationServiceインタフェースのローカル(WebCenter Sites)実装です。

    • RemoteRecommendationServiceは、RecommendationServiceインタフェースのリモート(Satellite Server)実装です。

73.2.2 カスタムRESTリソースの実装手順

  1. RESTサービスを記述したXSDファイル(recommendations.xsdファイル)を作成します。

  2. JAXB xjcユーティリティ(「generate」antタスク)を使用してBeanを生成します。

  3. RESTインタフェースを作成します。WebCenter SitesとSatellite Serverとでは実装が異なります。

  4. クラスcom.fatwire.rest.BaseLocalServiceおよびcom.fatwire.rest.BaseRemoteServiceを拡張して、RESTインタフェースを実装します。

  5. 次の手順は、Satellite Serverキャッシュを利用する場合のオプションです。

    WebCenter Sites側でエレメントを作成します。このエレメントは、ローカル実装と同じアセットをロードします。

  6. com.fatwire.rest.BaseResourceクラスを拡張して、RESTリソース・クラスを作成します。

  7. WebCenter Sites側およびSatellite Server側の両方で、RESTサービスと構成をWEB-INF/classes/custom/RestResources.xmlファイルに登録します。

    custom/RestResources.xmlファイルには次のコンポーネントが含まれます。

    • resourceConfigs idを含むBeanのみが必須Beanです。resourceConfigsプロパティには、使用されるすべてのREST構成への参照が含まれます。


      注意:

      カスタムresourceConfigsが非コメント化されている場合は、Beanを参照する必要があります。そうしないと、WEMインストールで提供されるデフォルトのRESTリソースが登録されません。


    • リソース構成は、タイプcom.fatwire.rest.ResourceConfigにする必要があります。通常は、このクラスの1つのインスタンスのみが登録されます(構成ごとに複数のサービスを登録できます)。


      注意:

      複数のサービスの場合は、RESTサービスの非結合グループごとに新しい構成を作成します。通常は個別のXSDファイルで指定します。


    • resourceClassesプロパティには、使用されるすべてのリソースのリストが含まれます。

    • beanPackageには、xjcユーティリティの実行時に出力Beanに指定したJavaパッケージ名が含まれます。

    • schemaLocationは、RESTサービスで生成されるすべての出力XMLファイルに配置されるxsi:schemaLocation属性です。