Oracle® Fusion Middleware Oracle WebCenter Portal開発者ガイド 11g リリース1 (11.1.1.7.0) B72084-02 |
|
前 |
次 |
WebCenter PortalのSpacesアプリケーションはブラウザベースのツールを使用してカスタマイズできますが、JDeveloperを使用してカスタマイズすることもできます。この章では、JDeveloperでSpacesアプリケーションおよびSpacesリソースをカスタマイズする方法と、それらをSpacesアプリケーションで利用する方法について説明します。たとえば、カスタム・コードや追加のタスク・フローが含まれる新たな共有ライブラリのデプロイが必要になることがあります。または、スキン、ページ・テンプレート、ナビゲーションなどのSpacesリソースを、JDeveloperで編集することもあります。
次の項が含まれます:
対象読者
この項は、JDeveloperとWebCenter Portal: Framework拡張機能に関して基本的な知識があり、Spaces開発で高度なカスタマイズを実行する必要がある開発者が対象です。
Spaces拡張機能を開発するためのJDeveloperワークスペースは、Oracle Technology Networkからダウンロードできます。このワークスペースの名前はDesignWebCenterSpaces.jwsです。
Spaces開発ワークスペースをダウンロードするには:
Spacesアプリケーションがインストールおよび構成され、期待どおりに動作することを確認します。
Oracle JDeveloper 11g (11.1.1.6.0)をダウンロードおよびインストールします。
Oracle JDeveloper 11g (11.1.1.6.0)は、http://www.oracle.com/technetwork/developer-tools/jdev/downloads/jdeveloper11116-1377208.html
からダウンロードして入手できます。
Oracle JDeveloper WebCenter Portal Frameworkおよびサービス・デザインタイム拡張機能をダウンロードおよびインストールします。
JDeveloperで、「ヘルプ」→「更新のチェック」を選択します。
「次」をクリックし、再び「次」をクリックして、使用できるすべての更新を表示します。
検索フィールドにたとえばwebcenter
と入力して、リストをフィルタリングします。
図55-1 Oracle JDeveloper WebCenter Portal Frameworkおよびサービス・デザインタイム拡張機能のダウンロード
「WebCenter Frameworkおよびサービス・デザインタイム」を選択します。
「終了」をクリックします。
第3.2項「WebCenter PortalのOracle JDeveloper用拡張機能のインストール」も参照してください。
Spaces開発のZIPファイル(DesignWebCenterSpaces_PS6.zip
)をOracle Technology Networkからダウンロードします。
http://download.oracle.com/otndocs/tech/webcenter/files/DesignWebCenterSpaces_PS6.zip
ローカルでコンテンツを解凍します(表55-1)。
表55-1 DesignWebCenterSpaces_PS6.zip - 解凍先フォルダ
解凍先フォルダ | 説明 |
---|---|
\DesignWebCenterSpaces |
このワークスペースを使用することで、共有ライブラリ・リストを構成できます。つまり、Spacesアプリケーションで使用する様々なカスタマイズ(カスタムjavaコード、カスタム・タスク・フローなど)が含まれる、1つ以上の共有ライブラリを指定できます。 ワークスペースは、Spacesリソースを編集およびアップロードする設計環境も提供します。 |
\copy_to_common |
WebCenter Portal WLSTコマンドが含まれる WebCenter PortalのWLSTコマンドは、 |
\copy_to_jdev_ext |
Oracle JDeveloper WebCenter Portal Frameworkおよびサービス・デザインタイム拡張機能にとって必要な更新です。 |
WebCenter PortalのWebLogic Scripting Tool (WLST)コマンドを、JDeveloperがインストールされているOracleホーム・ディレクトリにコピーします。
<DesignWebCenterSpaces_Unzip_Location>\copy_to_common
に移動します。
common
ディレクトリのコピーを作成します。
common
ディレクトリは、<DesignWebCenterSpaces_Unzip_Location>\copy_to_common
にあります。
<JDeveloper_install_directory>
\oracle_common
に移動します。
ヒント:
|
common
ディレクトリの内容をここにコピーします。
ヒント: Linuxでは、コマンド |
新バージョンのoracle.webcenter.portal.jar
をOracle JDeveloper拡張機能ディレクトリにコピーします。
<DesignWebCenterSpaces_Unzip_Location>\copy_to_jdev_ext
に移動します。
oracle.webcenter.portal.jar
のコピーを作成します。
oracle.webcenter.portal.jar
ファイルは<DesignWebCenterSpaces_Unzip_Location>\copy_to_jdev_ext
にあります。
<JDeveloper_install_directory>
\jdeveloper\jdev\extensions\
に移動します。
ヒント:
|
oracle.webcenter.portal.jar
ファイルをここにコピーします。
JDeveloperが開いている場合は、これを再起動します。
この項には次のサブセクションが含まれます:
Spacesアプリケーションには、標準の共有ライブラリextend.spaces.webapp.war
が含まれます。この.WARファイルには、Spacesカスタマイズが格納されている他のライブラリを参照できるデプロイメント・ディスクリプタ(weblogic.xml
)が含まれています。
したがって、複数のソースから様々な共有ライブラリにデプロイされるカスタム・コードまたはタスク・フローがある場合は、図55-2に示すように、それらをextend.spaces.webapp
共有ライブラリ・リストに追加できます。
この開発モデルは、開発者、顧客、パートナなど、複数のコントリビュータからの追加の共有ライブラリをSpacesで簡単に利用できる手段を提供するものです。
Spaces拡張機能を含む新しい共有ライブラリをデプロイする場合は必ず、Spaces共有ライブラリの依存性リストを変更し、extend.spaces.webapp.war
を再デプロイする必要があります。図55-3は、このプロセスを示しています。
詳細は、第55.2.2項「独自のカスタム・コードおよびタスク・フローの共有ライブラリでのデプロイ」および第55.2.3項「Spaces共有ライブラリ・リストの再ビルド」を参照してください。
開発者は、Spacesアプリケーションの拡張機能を作成し、それをADFライブラリJARでパッケージ化し、共有ライブラリとしてデプロイして、Spacesで使用可能にできます。たとえば、次のことが可能です。
JDeveloperでカスタム・コードを開発し、それをSpacesアプリケーションで使用できるようにします。
JDeveloperでカスタム・タスク・フローを開発し、それをSpacesアプリケーションで使用できるようにします
すぐに作業を開始できるようにサンプルのワークスペースが用意されており、そのワークスペースで拡張機能を開発し、カスタム・コードが含まれるSpaces共有ライブラリをビルドおよびデプロイできます。
注意: 共有ライブラリには他の共有ライブラリを含めることができます。このアプローチの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverアプリケーションの開発』の共有Java EEライブラリ・ファイルのアセンブルに関する項を参照してください。 |
サンプル・ワークスペースSampleWebCenterSpacesExtension.jws
にはサンプルの拡張機能とスクリプトが含まれており、これらを使用してSpaces用のカスタム・コードをデプロイできます。詳細は、Oracle Technology Network (http://www.oracle.com/technetwork/index.htm
)から付随するホワイトペーパー「Using Spaces Extension Samples (11.1.1.6.0)」をダウンロードしてください。
Spaces拡張機能を含む新しい共有ライブラリをデプロイする場合は必ず、Spaces共有ライブラリの依存性リストを更新し、extend.spaces.webapp.war
を再デプロイする必要があります。
この項では、次の操作について説明します。
Spaces共有ライブラリの依存性リストを構成するweblogic.xml
が含まれる、extend.spaces.webapp.war
という共有ライブラリをビルドおよびデプロイするには、WebCenterSpacesExtensionLibraryプロジェクトを使用します。
Spaces開発ワークスペースをダウンロードして解凍します。
第55.1項「Spaces開発用のワークスペースのダウンロード」を参照してください。
JDeveloperで、解凍先のディレクトリに移動し、DesignWebCenterSpaces\
DesignWebCenterSpaces.jws
を開きます(図55-4)。
WebCenterSpacesExtensionLibraryプロジェクトを開きます。
Resources\WebCenterSpacesExtensionLibrary\public_html\WEB-INFの下のweblogic.xmlへ移動します(図55-5)。
デフォルトでは、このファイルは空白で、ファイルには追加の共有ライブラリはリストされていません。
Spacesで使用する共有ライブラリごとに<library-ref>
エントリを追加します。
たとえば、図55-6に示すように単一のライブラリ・エントリを含めることができます。
<library-ref> <library-name>com.mycompanyname.shared.lib.1</library-name> </library-ref>
または、図55-7に示すように、複数の共有ライブラリを参照できます。
<library-ref> <library-name>com.mycompanyname.shared.lib.1</library-name> </library-ref> <library-ref> <library-name>com.mycompanyname.shared.lib.2</library-name> </library-ref> <library-ref> <!--reference to the shared library (custom.wencenter.spaces.war) that includes customizations from WebCenter 11gR1 11.1.1.3.0 or earlier--> <library-name>custom.webcenter.spaces</library-name> </library-ref>
注意: WebCenter Spacesの以前のリリース(11.1.1.3.0以前)用に開発されたカスタム拡張機能を使用する場合は、図55-7に示すように、古い共有ライブラリcustom.webcenter.spaces
の名前をweblogic.xml
に指定します。
参照する各共有ライブラリがSpaces管理対象サーバーにデプロイされていることを確認します。
次の項では、共有ライブラリ・リスト(extend.spaces.webapp.war
)のビルドおよびデプロイ・オプションを設定する方法について説明します。
共有ライブラリ・リストをビルドし、extend.spaces.webapp.war
をSpaces管理対象サーバーにデプロイする前に、環境およびWebCenter Portalインストールに関するいくつかの情報を構成ファイルconfig.properties
に指定する必要があります。
extend.spaces.webapp
共有ライブラリのビルドおよびデプロイ・プロパティを設定するには:
DesignWebCenterSpaces.jwsを開きます。
第55.1項「Spaces開発用のワークスペースのダウンロード」も参照してください。
WebCenterSpacesExtensionLibraryプロジェクトを開きます。
config.propertiesを開きます。
表55-2に示されている、JDeveloper環境およびWebCenter Portalインストールに関する情報を入力します。
config.properties
ファイルには、各プロパティに関する記述と例があります。提供されているデフォルト値は単なるサンプルで、インストール固有の値で置き換える必要があります。
表55-2 管理対象サーバーへのデプロイメントを有効にするためのconfig.propertiesの構成
構成プロパティ | 説明 |
---|---|
|
JDeveloperのインストール先のベース・ディレクトリ。 指定するディレクトリには、 |
|
WebLogic Scripting Tool (WLST)実行可能ファイルの名前。
|
|
Spaces開発ワークスペース・ディレクトリへのパス。 たとえば、 |
|
|
|
WebLogic Server管理コンソールが実行されているポート番号 |
|
Spacesアプリケーションが実行され、カスタム共有ライブラリがデプロイされるホスト・マシン |
|
管理パスワードを格納しているファイルの名前と場所。
|
|
管理ユーザーの詳細を格納しているファイルの名前と場所。
|
|
Spaces共有ライブラリがデプロイされている管理対象サーバー。たとえば、 クラスタ環境では、 |
|
Spacesアプリケーション( クラスタ環境では、 |
|
Spacesアプリケーションの名前。常に |
|
増分式の実装バージョン番号を制御。 |
更新内容をconfig.properties
に保存します。
config.properties
への更新は即時に適用されるため、JDeveloperを再起動する必要はありません。
次の項では、共有ライブラリ・リストextend.spaces.webapp.war
をビルドおよびデプロイする方法について説明します。
共有ライブラリ・リスト(weblogic.xml
)を変更した場合は、extend.spaces.webapp.war
共有ライブラリを再ビルドおよび再デプロイする必要があります。
共有ライブラリ・リストをビルドおよびデプロイするには:
JDeveloperでDesignWebCenterSpaces.jws
を開きます。
第55.1項「Spaces開発用のワークスペースのダウンロード」も参照してください。
WebCenterSpacesExtensionLibraryプロジェクトを開きます。
環境の詳細をconfig.properties
にまだ指定していない場合は、その指定を行います。
第55.2.3.2項「ビルドおよびデプロイ・オプションの設定(config.properties)」も参照してください。
extend.spaces.webapp.war
を再ビルドするには、「Antを実行」ドロップダウン・メニューを開き、clean-stageを選択します(図55-8)。
これによって、共有ライブラリ・リストextend.spaces.webapp.war
の新バージョンが生成されます。新しいWARに関連付けられた実装バージョン番号は、次のMANIFEST.MF
に保存されます。
<解凍先ディレクトリ>/DesignWebCenterSpaces/WebCenterSpacesExtensionLibrary/META-INF/MANIFEST.MF
Spaces共有ライブラリ・リストを再デプロイするには、「Antを実行」ドロップダウン・メニューを開き、deploy-shared-libを選択します。
新しいバージョンの共有ライブラリ・リストがSpaces管理対象サーバーにデプロイされます。新しいデプロイメントを確認するには、WLS管理コンソールにログインし、デプロイメントの概要ページへ移動して実装バージョンを確認します。つまり、次のように移動します。
「デプロイメント」→「extend.spaces.webapp」→「概要」
最新バージョンがアクティブでない場合は、第55.2.3.5項「共有ライブラリのデプロイメントのトラブルシューティング」を参照してください。
最新の共有ライブラリ・リストに問題がある場合、またはなんらかの理由で以前のバージョンに戻る必要がある場合は、WLS管理コンソールを使用して、現在のバージョンをアンデプロイ(削除)し、前のバージョンに戻ることができます。
不要な共有ライブラリ・バージョンを削除することもできます。変更、ビルド、デプロイ、テストを何度も繰り返した場合、デフォルトでは、各増分バージョンが保持されます。Spacesアプリケーションでは共有ライブラリの最新バージョンのみを使用するため、必要に応じて旧バージョンをクリーンアップまたは削除できます。
最新バージョンをアンデプロイする場合は、その前に、Spacesアプリケーションが実行されている管理対象サーバーを停止する必要があります。最新バージョンを削除したら、管理対象サーバーを再起動します。
注意: 元のextend.spaces.webapp
共有ライブラリ(バージョン11.1.1)があれば必要に応じてデフォルト・バージョンに戻ることができるため、これは削除しないことをお薦めします。
次のスクリプトを実行して、Spacesアプリケーションがデプロイされている管理対象サーバーを停止します。
UNIX: DOMAIN_HOME/bin/stopManagedWeblogic.sh
Windows: DOMAIN_HOME\bin\stopManagedWeblogic.cmd
WLS管理コンソールにログインし、デプロイメントの概要ページ(「デプロイメント」→「extend.spaces.webapp」→「概要」)に移動し、最新バージョンの共有ライブラリを削除します。
デフォルトのSpaces展開に戻るには、元のextend.spaces.webapp.war
共有ライブラリに戻ります。つまり、extend.spaces.webapp.war
バージョン11.1.1以外のすべてバージョンのSpaces共有ライブラリを削除します。
次のスクリプトを実行して、Spacesアプリケーションがデプロイされている管理対象サーバーを起動します。
UNIX: DOMAIN_HOME/bin/startManagedWeblogic.sh
Windows: DOMAIN_HOME\bin\startManagedWeblogic.cmd
デプロイメントが正常に行われたにもかかわらず、デプロイメント後に変更が反映されない。
Spacesアプリケーションは、常に最新バージョンの共有ライブラリを使用します。MANIFEST.MF内の実装バージョンが、WLS管理コンソールに表示される実装バージョンに一致することを確認します。
たとえば、<UnzipDir>/DesignWebCenterSpaces/WebCenterSpacesExtensionLibrary/META-INF/MANIFEST.MF
内の値が、WLS管理コンソールの「デプロイメント」→「extend.spaces.webapp」→「概要」に表示される値と同じであることを確認します。
「Security: 090219」エラーが表示されます。
weblogic.security.internal.encryption.EncryptionServiceException: weblogic.security.internal.encryption.EncryptionServiceException: weblogic.security.internal.encryption.EncryptionServiceException: [Security:090219]Error decrypting Secret Key com.rsa.jsafe.JSAFE_InputException: Invalid input length for decryption. Should be a multiple of the block size - 8
wls.userconfig
およびwls.userkey
が両方ともconfig.properties
ファイル内に正しく設定されており、指定されている両方のセキュリティ・ファイルがアクセス可能であることを確認します
「DeployerException: Task 9 failed」が表示されます。
weblogic.Deployer$DeployerException: weblogic.deploy.api.tools.deployer.DeployerException: Task 9 failed: [Deployer:149117]deploy library custom.webcenter.spaces [LibSpecVersion=11.1.1.2,LibImplVersion=11.1.1.2.5] on AdminServer,WC_Spaces.
このエラーは、新しいデプロイメントと既存のデプロイメントの実装バージョンが同一の場合に発生します。WLS管理コンソールを使用して現在の実装バージョンを確認し、config.properties
内のrestart.implementation.version.suffixプロパティをこの値に変更します。共有ライブラリを再ビルドおよび再デプロイすると、実装バージョンは1ずつ増分します。
「ReDeploy Spaces Failed」が表示されます。
Failed to redeploy the application with status failed Current Status of your Deployment: Deployment command type: redeploy Deployment State : failed Deployment Message: weblogic.application.ModuleException:[exec] No stack trace available. ######### ReDeploy Spaces Failed
Spacesアプリケーションのデプロイ先の管理対象サーバーを再起動します。
「java.lang.IllegalArgumentException」が表示される。
Spacesアプリケーションのデプロイ先の管理対象サーバーを再起動します。
デプロイメントがハングします。
デプロイメント・フェーズ(「Antターゲットの実行」→deploy-shared-lib)中に問題が発生してプロセスがハングする場合は、JDeveloper内からAntプロセスを終了または停止してから、Spacesアプリケーションの管理サーバーおよび管理対象サーバーを再起動します。
新しくデプロイされたSpaces共有ライブラリがアクティブでません。
新しくデプロイされた共有ライブラリがアクティブでない場合は、WLS管理コンソールを使用して、アクティブでない共有ライブラリのバージョンを手動で削除してから、Spaces共有ライブラリを再ビルド(「Antターゲットの実行」→「clean-dist」)および再デプロイ(「Antターゲットの実行」→「deploy-shared-lib」)します。
クラスタ環境でのwebcenter.earの再デプロイは失敗します。
場合によって、webcenter.ear
の再デプロイは失敗することがあります。すべての管理対象サーバーを再起動するか、5分後にもう一度再デプロイを試してください(「Antターゲットの実行」→「deploy-shared-lib」)。
クラスタ環境にカスタム共有ライブラリをデプロイした後、Spacesにアクセスできません。
クラスタにカスタム共有ライブラリをデプロイした後(「Antターゲットの実行」→「deploy-shared-lib」)、Spacesアプリケーションにアクセスできない場合は、すべての管理対象サーバーを再起動します。
「アクセスできるページのリストを表示しようとしてエラーが発生しました。管理者に連絡してください」がログイン後に表示されます。
Spacesアプリケーションのデプロイ先の管理対象サーバーを再起動します。
「WCS#2009.12.22.00.49.35: メンバーの取得中に致命的なエラーが発生しました。」が表示されます。
Spacesを再起動します。
この項では、Spacesリソース開発の設計環境であるWebCenterSpacesResourcesプロジェクトについて説明します。このプロジェクトを通じて、JDeveloperで開発またはカスタマイズしたリソースを、Spacesアプリケーションにアップロードできます。
この項には次のサブセクションが含まれます:
WebCenter Portalのラウンドトリップ開発機能は、アプリケーション全体を再デプロイせずにSpacesリソースを変更できる、簡単で便利な手段を提供します。ラウンドトリップ開発とは、デプロイされたアプリケーションからリソースをダウンロードし、それをJDeveloperにアップロードしてメンテナンスや拡張を行う機能および手法です。変更したリソースはSpacesアプリケーションにアップロードしてすぐに使用したり、テストしたりできます。
Spacesには標準で、スキン、ページ・テンプレートなど、すぐに使用または変更できるいくつかのデフォルトのリソースが用意されています。Spacesの使用方法を簡単にするために、Spaces内でリソースを作成および編集するための組込み機能は、意図的に多少制限されています。リソース要件がSpacesアプリケーションの編集機能を超える場合は、リソース開発を目的として特別に設計されている - WebCenterSpacesResourcesというJDeveloperプロジェクトを使用して、リソースを開発できます。
このプロジェクトを使用して、カスタム・スキン、ページ・テンプレート、ページ・スタイル、ナビゲーション、コンテンツ表示テンプレート、マッシュアップ・スタイル、リソース・カタログを作成および管理することをお薦めします。プロジェクトは、いくつかのサンプル・リソースと、必要となる場合があるファイルおよびフォルダを提供しています。リソースをゼロから開発する必要はありません。Spacesアプリケーションから既存のリソースをエクスポートして、それらをJDeveloperで編集するか、または起点としてサンプルのいずれかを使用できます。
注意: この章では、WebCenterSpacesResourcesプロジェクトを使用してリソースのカスタマイズを管理する方法について説明します。リソースの作成/開発の詳細は、第55.3.4.3項「Spacesリソースを作成する方法」を参照してください。 |
新しいリソースをデプロイする準備が整ったら、Spacesアプリケーションが実行されているホストの名前とポートをJDeveloperに指定することによって、JDeveloperから直接、ライブSpacesアプリケーションにリソースをアップロードできます。
注意: カスタマイズされたリソースを共有ライブラリにデプロイする必要はありません。
または、Spacesにログインして、リソース・マネージャを使用して新しいリソースをアップロードすることもできます。この方法を使用する場合は、リソースをエクスポート・アーカイブ(.ear)に保存する必要があります。
Spacesワークスペースをダウンロードして解凍します。
第55.1項「Spaces開発用のワークスペースのダウンロード」を参照してください。
JDeveloperで、解凍先のディレクトリに移動し、DesignWebCenterSpaces\
DesignWebCenterSpaces.jws
を開きます(図55-10)。
このワークスペースには、WebCenterSpacesResourcesという名前の、リソース開発専用のプロジェクトがあります。
WebCenterSpacesResourcesプロジェクトを開きます。
WebCenterSpacesResourcesプロジェクトには、複数のファイルとフォルダが含まれています(図55-11)。
表55-3では、WebCenterSpacesResourcesプロジェクト内のファイルとフォルダについて説明しています。
表55-3 WebCenterSpacesResourcesプロジェクト内のファイルとフォルダ
構成プロパティ | 説明 |
---|---|
アプリケーション・ソース |
サポート・ファイルおよびフォルダ。 |
\Web Content |
Spacesリソースが含まれます。 |
\oracle\webcenter\siteresources |
Spacesリソースが含まれているディレクトリ。このフォルダですべてのアプリケーション・リソースを開発および管理できます。 |
\scopedMD |
アプリケーションレベルおよびスペースレベルのリソースが含まれます。
|
\<デフォルト・スコープID> |
サンプルのアプリケーションレベル・リソースが含まれます。 |
\contenttemplates |
サンプルのコンテンツ・プレゼンタ表示テンプレート( |
\navigation |
サンプルのナビゲーション( |
\pageStyle |
空白のページ・スタイル( |
\resourceCatalog |
サンプルのカタログ( |
\siteTemplate |
サンプルのページ・テンプレート( 注意: このディレクトリは、(ディレクトリ名はsiteTemplateですが)ページ・テンプレートを開発するためのディレクトリです。 |
\skin |
サンプルのスキン( |
\taskFlowStyle |
サンプルのマッシュアップ・スタイル用のファイル( |
\shared |
アイコンやイメージなど、リソースが使用するイメージ/コンテンツ用のコンテンツ・ディレクトリです。 リソースをSpacesアプリケーションにアップロードすると、 リソースが参照するすべてのファイルをこの |
\Page Flows |
サポート・ファイルおよびフォルダ。 |
ライブのSpacesアプリケーションまたはテスト環境で実行されているSpacesアプリケーション用のスキンやページ・テンプレートなどを作成または変更した場合、JDeveloperからアプリケーションへ、更新を直接アップロードできます。JDeveloper WebCenterSpacesResourcesプロジェクトからの直接更新を有効にするには、次の操作を行う必要があります。
Spacesアプリケーションが実行されているホストの名前とポートをconfig.properties
に指定します。
Spacesにリソースをアップロードできる適切なロールおよび権限を持つことを確認します。次のものが必要です。
WebLogic Serverロール - monitor
および
リソース権限 - たとえば、新しいスキンをアップロードするには、スキンの作成、編集、削除
の権限を持っている必要があります。詳細は、表55-5を参照してください。
Spacesのホスト名とポートを構成すると、プロジェクト内で「ポータル・リソースのアップロード」オプションが使用できるようになります。JDeveloperセッションでこのオプションを初めて使用する場合は、Spacesのログイン名とパスワードを入力する必要があります。セキュリティ上の理由で、資格証明はこれ以降のセッションで保存されませんが、現在のJDeveloperセッションのメモリー内には保存されます。
Spacesにログインすると、Spacesリソースを管理できる適切な権限があることがもちろん前提ですが、リソースをアップロードできます。
注意: 初期設定では、デフォルトのFusion Middleware管理者( |
config.properties
で接続プロパティを設定し、権限を付与するには:
次の場所にあるconfig.properties
を開きます。
<解凍先ディレクトリ>\DesignWebCenterSpaces\config.properties
表55-4に示されている、JDeveloperおよびSpacesインストールに関する詳細を入力します。
config.properties
ファイルには、各プロパティに関する記述と例があります。提供されているデフォルト値は単なるサンプルで、インストール固有の値で置き換える必要があります。
表55-4 直接アップロードを有効にするconfig.properties設定
構成プロパティ | 説明 |
---|---|
|
JDeveloperのインストール先のベース・ディレクトリ。 |
|
WebLogic Scripting Tool (WLST)実行可能ファイルの名前。
|
|
WebLogic Server管理コンソールが実行されているポート番号 |
|
Spacesアプリケーションが実行され、カスタム共有ライブラリがデプロイされるホスト・マシン |
|
Spacesアプリケーションが実行されているホスト・マシンの名前。 |
|
Spacesアプリケーションが実行されているポート番号。 |
|
Spaces URLプロトコルがhttpか、またはhttpsかを指定します。 |
|
Spacesアプリケーション( クラスタ環境では、 |
|
Spacesアプリケーションの名前。常に |
更新内容をconfig.properties
に保存します。
表55-5に示すとおり権限を確認し、必要に応じて要求します。
『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のスペースのロールと権限の管理に関する項も参照してください。
表55-5(続き)JDeveloperでリソースをアップロードおよび管理する権限
リソース | 必須のロールまたは権限 | タイプ | 説明 |
---|---|---|---|
アプリケーションレベルのリソース |
|
WebLogic Serverのロール |
|
|
WebCenter Portal: Spaces権限 |
|
|
|
WebCenter Portal: Spaces権限 |
|
|
スペースレベルのリソース |
|
WebLogic Serverのロール |
|
|
WebCenter Portal: Spaces権限 |
|
|
|
WebCenter Portal: Spaces権限 |
|
サンプル・リソースをアップロードして接続をテストし、Spacesでそのリソースを使用できることを確認します。
詳細は、第55.3.5項「Spacesアプリケーションへのリソースの直接アップロード」を参照してください。
また、第55.3.7項「リソースのラウンドトリップ開発のトラブルシューティング」も参照してください。
Spacesリソースの拡張は、JDeveloperプロジェクトWebCenterSpacesResourcesで行うことをお薦めします。このプロジェクトには、次のSpacesリソースの作成、変更およびアップロードに必要なすべてが用意されています。
ページ・テンプレート
ナビゲーション
ページ・スタイル
スキン
コンテンツ表示テンプレート
リソース・カタログ
マッシュアップ・スタイル
作業の開始方法
Spacesリソースをゼロから開発する必要はありません。多くの開発者は、Spacesアプリケーションから既存のリソースをダウンロードしてJDeveloperで編集します。SpacesリソースをJDeveloperに取り込むには、2種類の方法があります。1番目の方法は、サーバーからJDeveloperにリソースを直接ダウンロードする方法です。2番目の方法は、Spacesからリソースをエクスポートし、それをJDeveloperにインポートする方法です。
詳細は、次の項を参照してください。
『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のSpacesリソースのダウンロードに関する項
「Spacesリソースを作成する方法」も参照してください。
アプリケーションレベル・リソースとスペースレベル・リソース
アプリケーションレベル・リソースとスペースレベル・リソースの違いは、その適用範囲にあります。Spacesアプリケーションでは、次のように見なされます。
アプリケーションレベル・リソースは、すべてのスペースで使用できます。
すべてのアプリケーションレベル・リソースは、WebCenterSpacesResourcesプロジェクト・ディレクトリoracle/webcenter/siteresources/scopedMD/s8bba98ff_4cbb_40b8_beee_296c916a23ed
で開発する必要があります。
アプリケーション・リソースをSpacesアプリケーションにアップロードするには、Application-Manage Configuration
およびCreate, Edit, Delete <Resource_Type>
のSpaces権限が必要です。
スペースレベル・リソースは、特定のスペースでのみ使用できます。
スペースをアップロードできるように、適切なネームスペースの下で特定のスペースのリソースを開発する必要があります。
oracle/webcenter/siteresources/scopedMD/<スペースの内部ID
>
同様に、既存のスペースからダウンロードされJDeveloperにインポートされたリソースのみを同じスペースにアップロードして戻すことができます。このようなリソースは異なるスペースにアップロードできません。
リソースを特定のスペースにアップロードするには、Space-Manage Configuration
権限と次のいずれかが必要です。
Create, Edit, Delete Resources
(標準権限モデル)
Create, Edit, Delete <Resource_Type>
(詳細権限モデル)
リソースをJDeveloperから直接アップロードする場合は、WebLogic Serverのmonitor
ロールも必要です。第55.3.3項「Spacesアプリケーションへの直接アップロードの有効化」を参照してください。
Spacesリソースを作成および編集する方法の詳細は、次を参照してください。
Spacesリソースは、WebCenterSpacesResourcesプロジェクト内からJDeveloperへ直接ダウンロードできます。
第55.3.3項「Spacesアプリケーションへの直接アップロードの有効化」に記載されているように、構成プロパティと権限が適切に設定されていることを確認します。第55.2.3.2項「ビルドおよびデプロイ・オプションの設定(config.properties)」も参照してください。
図55-12に示すように、ナビゲータで「WebCenterSpacesResources」プロジェクトを右クリックし、「サーバーからのポータル・リソースのダウンロード」を選択します。
図55-13に示すように、「ポータル・リソースのダウンロード」ダイアログで、アプリケーションレベル・リソースまたはスペースレベル・リソースのダウンロードを選択します。これらの選択の詳細は、「アプリケーションレベル・リソースとスペースレベル・リソース」を参照してください。
使用可能なリソース名のリストをフィルタリングするには、図55-14に示すように、ダウンロードするリソースのタイプを「リソース・タイプ」メニューから選択します。
最後に、ダウンロードするリソースの名前を「リソース名」メニューから選択します。
「OK」をクリックします。
Spacesリソース・アーカイブ(.ear)をWebCenterSpacesResourcesプロジェクトにインポートすると、該当のプロジェクト・ディレクトリにリソースがアップロードされます。
アプリケーションレベル・リソースのインポート先は、次のとおりです。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\
application_ID\resource_type\resource_ID
たとえば、リソースIDがgsr5a8c2fcc_bc7f_4cba_9254_36df58d66e60
であるアプリケーションレベル・スキンは、アプリケーション・ディレクトリs8bba98ff_4cbb_40b8_beee_296c916a23ed
の下に作成されます。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\
s8bba98ff_4cbb_40b8_beee_296c916a23ed\skin\gsr5a8c2fcc_bc7f_4cba_9254_36df58d66e60
スペースレベル・リソースのインポート先は、次のとおりです。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\
Space_ID\resource_type\resource_ID
たとえば、リソースIDがgsre9cbef77_28b2_4f46_a69a_25beac543382
であるスペースレベル・スキンは、スペース・ディレクトリsc48d77f4_ca06_4fa9_8d51_0e23bed74eac
の下に作成されます。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\
sc48d77f4_ca06_4fa9_8d51_0e23bed74eac\skin\gsre9cbef77_28b2_4f46_a69a_25beac543382
JDeveloperで適切なリソースを検索できるように、Spacesリソースと親スペース(スペースレベルのリソースのみ)の内部IDを把握している必要があります。Spacesアプリケーションでは、内部IDはリソースの「バージョン情報」ダイアログ(図55-15)に公開されます。詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のリソースについての情報の表示に関する項を参照してください。
内部IDは、表示名のように覚えやすいものではありません。インポートされたリソースを識別するには、「リソースの更新」オプションを使用してその表示名を確認できます。リソース・ディレクトリに移動し、リソース・ファイル(たとえば、mynavigation.xml
、myskin.css
、mypagetemplate.jpsx
、mycatalog.xml
)にドリルダウンし、右マウス・メニューから「リソースの更新」をクリックします(図55-16)。
アーカイブからSpacesリソースをインポートするには:
アプリケーション・ナビゲータで、「WebCenterSpacesResources」プロジェクトを右クリックし、「ポータル・リソースのインポート」を選択します。
「ポータル・リソースのインポート」ダイアログで、インポートするリソースを含むアーカイブ・ファイル(EAR)の名前を入力するか参照します。
アーカイブがまだ存在しない場合は、SpacesにログインしてリソースをEARファイルにダウンロードします。『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のSpacesリソースのダウンロードに関する項を参照してください。
「OK」をクリックします。
リソースに移動します。
アプリケーション・リソースは、次の場所の下にあります。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\
s8bba98ff_4cbb_40b8_beee_296c916a23ed
スペースレベル・リソースは、次の場所の下にあります。
WebCenterSpacesResources\oracle\webcenter\siteresources\scopedMD\<Space_GUID>
リソースの作成の詳細は、該当の章を参照してください。
ページ・テンプレート - ページ・テンプレートの使用
ページ・スタイル - ページ・スタイルの使用
スキン - スキンの作成および管理
ナビゲーション - ポータルでのナビゲーション・モデルのビルド
コンテンツ表示テンプレート - コンテンツ・プレゼンタ表示テンプレートの作成
リソース・カタログ - リソース・カタログの作成と管理
マッシュアップ・スタイル - マッシュアップ・スタイルの使用
Spacesアプリケーションが稼働している場合、JDeveloper環境からアプリケーションへ、新しいリソースまたは更新されたリソースを直接デプロイできます。
この方法でリソースをアップロードするには、Spacesアプリケーション内の適切なリソース管理権限を持っている必要があります。適切な権限がない場合は、リソースをアップロードできません。第55.3.3項「Spacesアプリケーションへの直接アップロードの有効化」も参照してください。
Spaces接続の詳細をconfig.properties
にまだ構成していない場合はその構成を行い、適切なリソース管理権限を要求します。
第55.3.3項「Spacesアプリケーションへの直接アップロードの有効化」も参照してください。
JDeveloperでWebCenterSpacesResourcesプロジェクトを開き、アップロードするリソースに移動します。
たとえば、サンプルのアプリケーションレベル・ナビゲーションSampleNavigationをアップロードするには、次の場所に移動します(図55-17)。
WebCenterSpacesResources\Web Content\oracle\ webcenter\siteresources\scopedMD\s8bba98ff_4cbb_40b8_beee_296c916a23ed\navigation\gsrcc8dab1c_6161_4bb8_8764_127b4ecee01b
リソースが完全であることを確認します。
リソースが使用する、イメージやアイコンなど、すべてのコンテンツがコンテンツ・ディレクトリ/oracle/webcenter/siteresources/scopedMD/sharedにあり、このようなコンテンツへのすべての参照が、たとえば次のようにこの場所を指すことを確認します。<af:image source="/oracle/webcenter/siteresources/scopedMD/shared/mylogo.gif id="pt_12">
Spacesにアップロードするリソースに関連付けられているファイルを右クリックし、「ポータル・リソースのアップロード」を選択します。
大部分のリソース・タイプでは、1つのファイルが関連付けられています。マッシュアップ・スタイルは例外で、2つのファイル(definition.xml
および.jsff
)を持ちます。マッシュアップ・スタイルをアップロードするには、definition.xml
ファイルを右クリックする必要があります。
選択されたリソースがsharedディレクトリの下のコンテンツを参照する場合は、JDeveloperからコンテンツをアップロードするかどうかを指定します。
個々のファイルではなく、コンテンツ・ディレクトリ全体がアップロードされます。たとえば、スキンが2つのファイル(...\shared\skins\logos\mylogo.gif
および...\shared\skins\icons\myicon.gif
)を参照する場合、両方のディレクトリ(\logos
および\icons
)のコンテンツ全体がアップロードされます。
アップロードの際は、リソースのコンテンツ・ディレクトリにあるすべてのファイルが目的のアプリケーションにアップロードされ、同じ名前の既存のファイルは上書きされます。コンテンツ・ディレクトリをアップロードしないことも選択できますが、全部かゼロかの選択のため、このリソースが参照するファイルのみをアップロードすることはできません。
要求される場合は、Spacesユーザー名およびパスワードを入力し、「OK」をクリックします。
アップロード・プロセスが完了したことを伝えるメッセージが表示され、アップロード・ログ・ファイルupload_<resource_type_id>.log
の名前と場所も表示されます。
アップロード・ログ・ファイルを確認します。
次のメッセージは、アップロードが成功したことを示します。
Imported <一時ログ・ディレクトリ>\<リソース・タイプID>.ear
このメッセージが表示されない場合は、第55.3.7項「リソースのラウンドトリップ開発のトラブルシューティング」を参照してください。
Spacesアプリケーションにログインし、リソース・マネージャを介して期待どおりにリソースを使用できることを確認します。
Spacesにログインします。
次のように、リソース・マネージャに移動します。
アプリケーションレベル・リソースを確認するには、次のURLに移動します。
http://host:port/webcenter/spaces/admin/resources
スペースレベルのリソースを確認するには、次のURLへ移動します。
http://host:port/webcenter/spaces/spaceName/admin/resources
左側のパネルから該当のリソース・タイプを選択し、アップロードしたリソースが使用可能で、期待どおりに動作することを確認します。
依存イメージなどは、Spacesコンテンツ・ディレクトリに置かれている必要があります。イメージがない場合は、JDeveloperで該当のコンテンツ・ディレクトリにコピーしたことを確認します(/oracle/webcenter/siteresources/scopedMD/shared
の下)。
Spacesアプリケーションでリソースの使用準備が整っている場合は、それを直接Spacesにアップロードすることもできれば、随時Spacesリソース・マネージャを使用して自分(または他の誰か)がアップロードできるようにリソースをEARファイル形式にエクスポートしておくこともできます。
Spacesリソースをエクスポートするには:
アプリケーション・ナビゲータで、リソース・ディレクトリに移動し、リソース・ファイル(たとえば、myskin.css
、mypagetemplate.jpsx
、mycatalog.xml
)にドリルダウンします。
注意: イメージ、アイコン、スタイル・シートなど、すべての依存コンテンツが/oracle/webcenter/siteresources/scopedMD/shared/にコピーされていて、このようなコンテンツへのすべての参照がこの場所を指すことを確認します(例: |
右マウス・メニューから「ポータル・リソースのエクスポート」をクリックします。
「ポータル・リソースのエクスポート」ダイアログで、エクスポート・アーカイブ・ファイルのパスとファイル名を入力または参照します。たとえば、C:\myskin.ear
です。
選択されたリソースがsharedディレクトリの下のコンテンツを参照する場合は、リソース・アーカイブにコンテンツ・ディレクトリを含めるどうかを指定します。
次のどちらかの操作を行います。
「コンテンツ・ディレクトリを含める」を選択して、イメージやアイコンなど、ポータル・リソースが参照するコンテンツを、エクスポート・アーカイブにエクスポートします。
リソースのコンテンツ・ディレクトリをエクスポートする前に、次の点を考慮してください。
個々のファイルではなく、コンテンツ・ディレクトリ全体がエクスポートされます。たとえば、スキンが2つのファイル(...\shared\skins\logos\mylogo.gif
および...\shared\skins\icons\myicon.gif
)を参照する場合、両方のディレクトリ(\logos
および\icons
)のコンテンツ全体がエクスポートされます。
インポートでは、コンテンツ・ディレクトリにあるすべてのファイルが目的のSpacesアプリケーションにアップロードされ、同じ名前の既存のファイルは上書きされます。インポートの際にコンテンツ・ディレクトリをアップロードしないことも選択できますが、全部かゼロかの選択のため、この特定のリソース用の個別のファイルをアップロードすることはできません。
「いいえ」をクリックして、ポータル・リソースが参照する\shared
ディレクトリの下のコンテンツを除外します。
「OK」をクリックします。
リソース・アーカイブをSpacesにアップロードする手順は、『Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイド』のSpacesリソースのアップロードに関する項を参照してください。
トラブルシューティングに関するこの項には、次のサブセクションが含まれます:
リソース・アップロード・ログ・ファイルの確認
リソースをSpacesアプリケーションにアップロードすると、進行状況の詳細がログ・ファイルに記録されます。ログ・ファイルの名前には、アップロードしているリソースのタイプと一意のIDが、upload_
resource_type_id
.log
の形式で含まれます。たとえば、upload_siteTemplate_17283.log
となります。
ログ・ファイルの場所は、ローカルのtemp
ディレクトリの設定によってそれぞれ異なります。ログ・ファイルの正確な場所は、次のような情報メッセージに表示されます。
次のログ・エントリは、アップロード・プロセスが成功したことを示します。
Imported <一時ログ・ディレクトリ>\<リソース・タイプID>.ear
権限が不足している場合は、次に説明する、「アクセスが拒否されました」
エラーまたは「java.lang.Exception」
エラーが表示されます。
リソースをSpacesにアップロードできない - アクセスが拒否された
monitor
ロールがない場合は、リソース・アップロード・ログ・ファイルに次のエラーが表示されます。
Operation: getScopeName(java.lang.String) Detail: Access denied. Required roles: Admin, Operator, Monitor, executing subject: principals=[yourusername]
monitor
ロールはWeblogic Serverロールです。このロールにより、JDeveloperからSpacesアプリケーションにリソースをアップロードするWLSTスクリプトの実行が可能になります。WebLogic Server管理コンソールを使用してこのロールを付与するようSpaces管理者に依頼します。
リソースをSpacesにアップロードできない - java.lang.Exception
Spacesの任意のリソース、またはアップロードを試みている特定のタイプのリソースを管理する権限がない場合は、リソース・アップロード・ログ・ファイルに次のエラーが表示されます。
javax.management.MBeanException at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234) Root Cause: Caused by: java.lang.Exception at oracle.webcenter.portalframework.genericsiteresources.model.lifecycle.SiteResourcesHelper.updateResource(SiteResourcesHelper.java)
スペース管理を使用して適切な権限を付与するようSpaces管理者に依頼します。または、アップロードしようとしているリソースが特定のスペース用の場合は、スペース・モデレータに連絡して必要な権限を要求してください。表55-5「(続き)JDeveloperでリソースをアップロードおよび管理する権限」も参照してください。