![]() ![]() ![]() ![]() |
伝播 Ant タスクは、WebLogic Portal 資産をプログラムにより別の環境に伝播するのに使用できるツールの完全なセットを提供します。
この章では伝播 Ant タスクを説明し、スコープ指定とポリシーのような関連トピックについても説明します。この章の内容は以下のとおりです。
Ant タスクにより、Workshop for WebLogic 伝播ツールで実行できるすべての機能と、サーバをメンテナンス モードにするような追加のオプションや機能を実行できます。Ant タスクで次が実行できます。
注意 : | 伝播を実行して特定の LDAP データを更新できるようにする場合は、管理サーバを実行しておく必要があります。伝播を実行すると、訪問者ロール、委託管理ロール、資格ポリシー、委託管理ポリシーなどの LDAP データが追加、削除、または更新される可能性があります。 |
この章で説明されている Ant タスクを使用してポータル Web アプリケーションを伝播する前に、WebLogic Portal 伝播の基本概念に精通することが重要です。伝播方針の計画の詳細については、「伝播方針の開発」を参照してください。Ant タスクは、Workshop for WebLogic 伝播ツールと同じ基本機能を提供します。「伝播に関するトピック」で説明されている基本概念と検討事項は、伝播ツールと Ant タスクの両方に適用されます。
ヒント : | Ant ベースの伝播スクリプトを設計する前に、「Workshop for WebLogic 伝播ツールの使用」も参照することをお勧めします。この章では、Workshop for WebLogic 伝播ツールを使用してポータルを伝播する方法が説明されています。これらのツールは伝播プロセスを段階的に導き、インベントリのマージ、表示、および調整について視覚的インタフェースを提供します。伝播ツールにより使用されるワークフローを確認して理解することは、Ant ベースの伝播を計画するときに役立ちます。 |
Ant タスクは、オンラインとオフラインの 2 つのカテゴリに分類されます。オンライン タスクは、デプロイされ実行中の WebLogic Portal アプリケーションと対話します。たとえば、OnlineDownloadTask により、稼働中のサーバからポータル インベントリを抽出して、それをファイルに保存できます。これを実行するため、そのタスクはエンタープライズ アプリケーションにデプロイされているサーブレットと通信します。オンライン タスクについては、「オンライン タスクの概要」で説明されています。
オフライン タスクは、既に抽出され、保存されているインベントリ ファイルで動作します。オフライン タスクにはネットワーク接続は必要ありません。オフライン タスクについては、「オフライン タスクの概要」で説明されています。
オンラインまたはオフライン Ant タスクのいずれかを使用するには、CLASSPATH
に、そのタスクを含む JAR ファイルを配置する必要があります。オンライン タスクを使用するには、ソース システムと送り先システムでポータル EAR プロジェクトにライブラリ モジュールをデプロイする必要があります。
伝播 Ant タスクを実行するには、この節で説明するように、それを使用するシステムの Ant タスクの CLASSPATH
にいくつかの JAR ファイルを配置する必要があります。
伝播要求を処理するサーブレットは、WebLogic Portal のインストール時に提供されます。オンライン Ant タスクを使用する場合は、伝播対象のポータル アプリケーションを含むポータル EAR プロジェクトに、このサーブレットをデプロイする必要があります。
デフォルトでは、図 8-1 に示すように、伝播サービス ファセットがポータル EAR プロジェクトに含まれます。このファセットには、伝播サーブレットが含まれます。伝播サービス ファセットを選択した状態でポータル EAR プロジェクトを作成すると、EAR をサーバにデプロイするときに伝播サーブレットが自動的にデプロイされます。
サーブレットがデプロイされるとき、その名前は earProjectName
Propagation
になります。
ここで、earProjectName
は、伝播するポータル アプリケーションを含む EAR プロジェクトの名前です。たとえば、myEARProjectPropagation
です
ヒント : | アプリケーションの META-INF/weblogic-application.xml ファイルの中を見ると、アプリケーションにサーブレットが追加されていることが確認できます。コード リスト 8-1 に、サンプル アプリケーションの myEarProject に追加されたスタンザを示します。 |
<library-ref>
<library-name>wlp-propagation-app-lib</library-name>
</library-ref>
<library-context-root-override>
<context-root>propagation</context-root>
<override-value>myEarProjectPropagation</override-value>
</library-context-root-override>
オンライン Ant タスクは要求を処理するのにサーブレットを使用するので、そのタスクを使用するとき、サーブレットの名前を知る必要があります。たとえば、OnlinePingTask は、サーブレット名を要求する serverURL パラメータを取得します。
servletURL="http://localhost:7001/myEarProjectPropagation/
inventorymanagement"
次を実行すると、伝播サーブレットが EAR プロジェクトに含まれているかどうかを確認できます。
WebLogic Portal は、各伝播 Ant タスクを実行するのに使用できるサンプル Ant ビルド スクリプトを提供します。この節では、伝播サーブレットが正しくインストールされていることをテストするためにサンプル ビルド スクリプトを使用する方法について説明します。サンプル ビルド スクリプトは次のとおりです。
BEA_HOME/weblogic92/portal/bin/propagation/propagation_ant.xml
ヒント : | スクリプト ファイルには、提供する必要がある変数についての詳細情報が含まれています。スクリプト内の指示を注意深く読んでください。 |
処理が成功すると、コード リスト 8-2 に示すような出力が表示されます。
pingSrc:
[echo] ****** Start: pingSrc ******
[onlinePing] INFO: Using the logger delegate (com.bea.p13n.management.inventory.util.OfflineInventoryLoggerDelegate) specified in the propagation_context.properties file.
[onlinePing] WARNING: This command is using HTTP, which will transmit the administrator password in plain text. It is recommended to set allowHttp to false.
[echo] ****** Finish: pingSrc ******
ヒント : | propagation_ant.xml ビルド スクリプトをコピーして、それを固有のカスタム伝播ビルド スクリプトを作成するための基礎として使用できます。サンプル スクリプトには、各タスクを、条件プロパティがある場合とない場合の両方で実行する例が含まれています。Ant ConditionTask により提供される条件プロパティにより、Ant スクリプトで単純なフロー制御を実装できます。 |
オンライン タスクは、デプロイされ実行中の WebLogic Portal アプリケーションで動作します。オンライン タスクは、エンタープライズ アプリケーションにデプロイされているサーブレットを通じて、ポータル アプリケーションと通信します。たとえば、オンライン タスクにより、インベントリ ファイルを作成して、サーバから別のマシンにダウンロードできます。伝播サーブレットの詳細については、「伝播サーブレットのデプロイ」を参照してください。
注意 : | オンライン Ant タスクは HTTP または HTTPS を使用して WebLogic Server と通信するので、干渉するファイアウォールがそれを許可することを確認する必要があります。 |
表 8-2 に、オンライン伝播 Ant タスクの要約を示します。
オンライン Ant タスクで HTTPS を使用するには、WebLogic Server ドキュメントの「ID と信頼のコンフィグレーション」で説明されている標準 WebLogic SSL の説明に従ってください。
注意 : | URL をリモート WebLogic サーバにフォーマットするには、同じシステムを利用している場合は、localhost ではなく、システムの実際のホスト名を指定してください。また、サーバに対する HTTPS ポート番号を使用してください。デフォルトは、7002 です。 |
オンライン伝播 Ant タスクが失敗する場合、一般に次の理由のいずれかによってその失敗は発生します。
オフライン Ant タスクは以前にエクスポートしたインベントリ ファイルで排他的に動作します。これらのタスクは 1 つまたは 2 つのインベントリ ファイルで動作し、インベントリのコンテンツを探索し操作します。オフライン タスクは Workshop for WebLogic 伝播ツールに似た機能を提供します。
これらのタスクには、稼働中の WebLogic Portal アプリケーションへの接続は必要ありません。たとえば、オフライン タスクを使用して、ソース インベントリ ファイルと送り先インベントリ ファイルを結合および比較できます。
表 8-2 に、オフライン伝播 Ant タスクを示します。
オフライン伝播 Ant タスクが失敗する場合、一般に次の理由のいずれかによってその失敗は発生します。
スコープ指定は、エクスポートされる WebLogic Portal インベントリでのアーティファクトの数、すなわち、伝播中に追加、削除、更新しなければならないアーティファクトの数を制限することを意味します。一般に、スコープ指定により、伝播処理の期間と複雑さの両方が軽減されます。
ヒント : | 続ける前に、「スコープについて」で説明されているスコープ指定の詳細を読み返すことをお勧めします。 |
一部の Ant タスクは、デフォルトでは scope.properites
という、スコープ指定ルールを特定するプロパティ ファイルを作成または使用します。
たとえば、scope.properties
ファイルを編集して伝播スコープを調整し、そのファイルを OnlineDownloadTask に対するパラメータとして使用できます。このファイルは、タスクがインベントリの各ノードで、スコープ内またはスコープ外として扱われる方法を宣言します。タスクはスコープ指定ルールを参照して、それをエクスポートされたインベントリに適用します。その結果、スコープ指定インベントリ ファイルは通常、完全インベントリのサブセットになります。scope.properties
ファイルの詳細については、「スコープ プロパティ ファイルについて」を参照してください。
この節では、Ant タスクを使ってインベントリをスコープ指定する基本のワークフローを説明します。このワークフローの目的は、スコープ指定により、インベントリ ファイルのサイズと複雑さを軽減することです。このワークフローの結果が、scope.properties
ファイルです。このファイルには、2 つのインベントリを結合して最終的なマージ済みインベントリを作成するときに使用できる、スコープ指定ルールのセットが含まれています。
このワークフローで使用される Ant タスクは以下のとおりです。
scope.properties
ファイルを作成します。 scope.properties
ファイルがあります。
図 8-3 は、インベントリ ファイルのスコープ指定に含まれる基本的な手順を示しています。この手順は、一連の Ant タスクを使用して、インベントリを結合するのに必要なスコープ指定情報を含む最終的な出力の scope.properties
ファイルを生成します。
図 8-3 に示す手順には、次が含まれています。
scopeFile
属性を指定しないでください。この属性を指定しないと、タスクはサーバからインベントリ全体を取得します。取得したインベントリは図 8-3 で fullInventory.zip
として示されている ZIP ファイルに保存されます。 scope.properties
ファイルを抽出します。scope.properties
ファイルは、インベントリを作成するのに使用されたスコープ指定ルールを指定します。scope.properties
ファイルのコンテンツの詳細については、「スコープ プロパティ ファイルについて」を参照してください。スコープ指定インベントリを作成するには、scope.properties
ファイルを編集して、編集済みファイルを OnlineDownloadTask への入力として再び使用します。 scope.properties
ファイルを使って、OnlineDownloadTask を再実行します。この処理の結果は、指定したスコープ内に存在したアーティファクトのみを含む新しいインベントリ ファイルになります。 scope.properties
ファイルを抽出できることを示しています。実際には、返されるプロパティ ファイルは、手順 3 で OnlineDownloadTask への入力として使用されたファイルと同一です。
スコープ指定ソース インベントリ ファイルを取得したあと、それを送り先インベントリ ファイルに結合して、マージ済みインベントリ ファイルを作成できます。
コード リスト 8-3 は、scope.properties
ファイルの最初の 9 行を示しています。ファイルは、スコープ内にあるとみなされるアプリケーションの部分を一覧表示します。このファイルを編集して、伝播しない資産を削除できます。たとえば、すべてのコンテンツ リポジトリ資産を伝播から削除するため、scope_2 から scope_8 までラベル付けられている行を削除できます。
scope_0=Application
scope_1=Application\:ContentServices
scope_2=Application\:ContentServices\:Tools_Repository
scope_3=Application\:ContentServices\:Tools_Repository\:ContentNodes
scope_4=Application\:ContentServices\:Tools_Repository\:ContentTypes
scope_5=Application\:ContentServices\:Tools_Repository\:GlobalEntitlements
scope_6=Application\:ContentServices\:Tools_Repository\:GlobalDelegatedAdminPolicies
scope_7=Application\:ContentServices\:GlobalEntitlements
scope_8=Application\:ContentServices\:GlobalDelegatedAdminPolicies
scope_9=Application\:PersonalizationService
scope_10=Application\:PersonalizationService\:PlaceholderService
ポリシーを設定すると、ソース インベントリと送り先インベントリが最終的に 1 つのインベントリ ファイルに結合されるときの、結合方法を管理できます。ポリシーを使用するには、OfflineListPoliciesTask を使用して、policy.properties
ファイルをエクスポートします。このタスクにより、グローバル ポリシーを設定して、インベントリ内の全資産に適用できます。たとえば、すべての追加を受け入れるけれども、削除と更新は拒否するように選択できます。「ポリシー プロパティ ファイルについて」を参照してください。必要に応じて、policy.properties
ファイルを編集して、特定の資産に対するポリシー選択を変更できます。
ヒント : | 続ける前に、「ポリシーの使用」で説明されているポリシーの詳細を読み返すことをお勧めします。 |
ポリシーにより、次の 3 つのマージ事例の処理方法を選択できます。各マージ事例は、ポリシー ファイルで true または false に設定できます。
コード リスト 8-4 は、policies.properties
ファイルからの引用を示しています。すべての例で確認できるように、この伝播に対するポリシーは、追加と削除を受け入れ (Y)、更新を無視 (N) します。ポリシーはポータルの各資産に設定されます。このファイルを編集することにより、資産でポリシーを変更できます。
policy_0_taxonomy=Application
policy_0_adds=Y
policy_0_updates=N
policy_0_deletes=Y
policy_1_taxonomy=Application:ContentServices
policy_1_adds=Y
policy_1_updates=N
policy_1_deletes=Y
policy_2_taxonomy=Application:ContentServices:Tools_Repository
policy_2_adds=Y
policy_2_updates=N
policy_2_deletes=Y
policy_3_taxonomy=Application:ContentServices:Tools_Repository:ContentNodes
policy_3_adds=Y
policy_3_updates=N
policy_3_deletes=Y
policy_4_taxonomy=Application:ContentServices:Tools_Repository:ContentTypes
policy_4_adds=Y
policy_4_updates=N
policy_4_deletes=Y
policy_5_taxonomy=Application:ContentServices:Tools_Repository:GlobalEntitlements
policy_5_adds=Y
policy_5_updates=N
policy_5_deletes=Y
伝播を結合処理として考えることができます。ポータルを伝播するとき、ソース インベントリのコンテンツを送り先インベントリに結合します。結合はスコープ指定ルールとポリシー ルールによって管理されます。前の節の「インベントリのスコープ指定」では、インベントリに対するスコープ指定ルールを含む scope.properties
ファイルの作成方法を説明しました。このファイルを OfflineCompineTask に対する入力として使用でき、OfflineCombineTask はスコープ指定情報を使用して、最終的なインベントリ ファイルを作成するためにどのアーティファクトを結合するかを判断します。
この節では、伝播 Ant タスクを使ってインベントリを結合およびコミットする基本のワークフローを説明します。このワークフローで使用される Ant タスクは以下のとおりです。
scope.properties
ファイルおよび policy.properties
ファイルを指定できます。これらのファイルは、2 つのインベントリが結合される方法を管理します。
図 8-4 は、インベントリの結合とコミットに対する基本的なワークフローを示しています。ワークフローは、ソース インベントリ ファイルと送り先インベントリ ファイルを (OnlineDownloadTask を使って) エクスポート済みであると仮定しています。
ソース インベントリ ファイルと送り先インベントリ ファイルを取得したら、それらを OfflineCombineTask を使って結合できます。このタスクの結果が、結合インベントリ ファイルです。このファイルは、スコープ ルールおよびポリシー ルールが指定されている場合、それらが適用されているソース インベントリ ファイルと送り先イベントリ ファイルの組み合わせです。
OnlineUploadTask を使用して、結合インベントリを送り先サーバに移動します。OnlineCommitTask を使用して、結合インベントリを送り先 サーバでコミットします。
OfflineCombineTask、OnlineUploadTask、および OnlineCommitTask については、「伝播 Ant タスク リファレンス」を参照してください。
![]() ![]() ![]() |