追加リポジトリ作成ガイド
追加の BEA リポジトリの作成
コンテンツ管理システムは、複数の BEA システムのリポジトリまたは複数のサードパーティ製リポジトリ (あるいはその両方) から構成できます。また、独自のビジネス ニーズに合わせて複数のコンテンツ リポジトリを作成することができます。たとえば、コンテンツ データを物理的に分割する必要がある場合は、複数の BEA リポジトリを作成できます。
注意 : ライブラリ サービスを使用している場合、複数のリポジトリを効果的に使用するには、1 つの XA ドメイン内で作業をする必要があります。
注意 : 数千のコンテンツ項目を使用する大規模なプロジェクトの場合、別のデータベース インスタンスを使用して、プロダクション環境で行われる変更を最小限に押さえる必要が生じる場合があります。
この処理には、主に次の 5 つの手順があります。
手順 1 : 新しいリポジトリのデータベース オブジェクトの作成
この手順では、追加のコンテンツ管理データベース用のデータベース オブジェクトを作成します。
Oracle または DB2 データベースの場合は、追加のコンテンツ管理データベース用に新しいデータベース ユーザを作成します。SQL Server または Sybase の場合は、追加のコンテンツ管理データベース オブジェクト用に新しいデータベースを作成します。
BEA では、次のサンプル スクリプトを提供しています。これをコピーして、データベース リソースの定義に使用できます。データベース リソースは、.sql
スクリプトを実行する前にコンフィグレーションする必要があります。適切なサンプル スクリプトに従って、リポジトリごとに個別のデータベースまたはデータベース ユーザを事前定義する必要があります。データベースの作成の詳細については、『WebLogic Portal データベース管理ガイド』を参照してください。
Oracle 用に用意されているサンプル スクリプト : WL_HOME
/portal/db/oracle/817/admin/create_tablespaces.sql
および create_users.sql
SQL Server と Sybase 用に用意されているサンプル スクリプト :
SQL Server : WL_HOME
/portal/db/sql_server/2000/admin/create_database.sql
注意 : エラーなしで実行するには、SQL Server の cm_create_tables.sql
および cm_create_indexes.sql
スクリプトで作成されたインデックスに WEBLOGIC_INDEX
ファイル グループを定義する必要があります。
Sybase : WL_HOME
/portal/db/sybase/125/admin/create_devices.sql
および create_database.sql
注意 : エラーなしで実行するには、Sybase の cm_create_tables.sql
および cm_create_indexes.sql
スクリプトで作成されたインデックスに WEBLOGIC_INDEX
ファイル グループを定義する必要があります。
DB2 用に用意されているサンプル スクリプト : WL_HOME
/portal/db/db2/8/admin/create_tablespaces.sql
および create_users.sql
注意 : PointBase は、プロダクション リポジトリにはお勧めしません。
手順 1 で作成したデータベース ユーザとしてデータベースに接続します。
環境に応じて適切なデータベース ディレクトリに移動します。パスはデータベース ベンダごとに異なります。
Oracle : WL_HOME
/portal/db/oracle/817
注意 : このパスは、Oracle 8.1.7 および 9i の両方で使用されます。
SQL Server : WL_HOME
/portal/db/ql_server/2000
Sybase : WL_HOME
/portal/db/sybase/125
DB2 : WL_HOME
/portal/db/db2/8
次のスクリプトを実行して、コンテンツ管理データベース オブジェクトを作成します。
cm_create_tables.sql
cm_create_fkeys.sql
cm_create_indexes.sql
cm_create_triggers.sql
ディレクトリ WL_HOME
/portal/db/data/required
から、次のスクリプトを実行します。
sample_cm_insert_system_data.sql
このタスクは完了しました。
手順 2 : 新しいリポジトリのサーバへの接続
ドメインの WebLogic Server を起動して、コンソールにログインします。
追加のコンテンツ管理データベースに関して新しい接続プールをコンフィグレーションします。
[サービス|JDBC|接続プール] に移動します。
既存の XA 接続プールを右クリックして [(接続プール名) のクローン] を選択します。
注意 : XA 接続の詳細については、以下を参照してください。
http://edocs.beasys.co.jp/e-docs/platform/docs81/confgwiz/examples.html#1074297
新しい接続プールの名前を選択します (contentPool2
など)。
[一般] タブで、追加のリポジトリに使用する新しいデータベース オブジェクトの設定と一致するように、クローンを作成したプールの設定を編集します。
[クローン] をクリックして、変更内容を適用します。
[サービス|JDBC|データ ソース] から、任意のデータ ソースを右クリックします。
ドロップダウン メニューから [(データ ソース名) のクローン] を選択します。
データ ソースの名前を、「Clone of ...」から、何か意味のある名前に変更します (newContentDataSource など)。
JNDI 名を、新しいデータ ソース名と一致するように設定します。
[プール名] ドロップ ダウン メニューを使用して、プールを新しい接続プール名に設定します (contentPool2) など。
[クローン] をクリックして、変更内容を適用します。
手順 3 : ポータル アプリケーションの新しいリポジトリとの関連付け
BEA リポジトリでは、エンティティ Bean (EJB) を使用して、ポータル アプリケーションとデータ ソースを関連付けます。BEA のデフォルトのコンフィグレーションは、1 つのデータ ソース (またはリポジトリ) のみに対応しているため、データ ソースの EJB 定義を管理する XML ファイルを変更する必要があります。つまり、追加で作成したリポジトリで利用可能な新しい EJB を、これらの XML ファイル内に作成する必要があります。
これを行う最も簡単な方法は、既存の XML ファイルを新しい EJB 定義作成のテンプレートとして使用して、新しい EJB 定義を元のファイルに追加することです。
コンテンツ EJB
を、新しいデータ ソース (ejb-jar.xml
、weblogic-ejb-jar.xml
、weblogic-cmp-rdbms-jar.xml
) に再デプロイします。
編集に使用する、作業用の一時ディレクトリを 2 つ作成します。たとえば、c:/temp/working
と c:/temp/newfiles
とします。
新しいリポジトリと関連付けるポータル アプリケーション ディレクトリで content_repo.jar
を検索します。たとえば、WL_HOME
/weblogic81/samples/portal/portalApp/content_repo.jar
です。
content_repo.jar ファイルのコピーを、作成した作業ディレクトリにそれぞれ配置します。
WinZip や JavaJar などの圧縮ユーティリティを使用して、content_repo.jar をそれぞれのディレクトリで解凍します。この時点で、2 つの content_repo.jar ファイルとその内容は全く同じです。
ejb-jar.xml
weblogic-ejb-jar.xml
weblogic-ejb-rdbms-jar.xml
C:/temp/working
ディレクトリ内のファイルを編集し、変更内容を C:/temp/newfiles
ディレクトリ内のファイルにコピーします。
一時ディレクトリと、作業対象のファイルを作成したら、ejb-jar.xml
ファイルをコンフィグレーションします。
C:/temp/working/ejb-jar.xml
ファイルを開き、C:/temp/newfiles/ejb-jar.xml
ファイルを開きます。2 つのファイルが開いた状態になります。
C:/temp/working/ejb-jar.xml
ファイルで、EJB
(EJB
の大文字/小文字を区別します) を検索して、新しい名前に置き換えます (EJBNew
など)。
注意 : この新しい名前は、すべてのファイルで使用する必要があります。
C:/temp/working/ejb-jar.xml
ファイルの次の箇所を C:/temp/newfiles/ejb-jar.xml
ファイルにコピーします。
c:/temp/working/ejb-jar.xml ファイルからコピーする場所 (以下のタグに囲まれた部分)
|
c:/temp/newfiles/ejb-jar.xml ファイルに貼り付ける場所 (以下のタグの前)
|
<enterprise-beans> </enterprise-beans>
|
</enterprise-beans>
|
<relationships> </relationships>
|
</relationships>
|
<assembly-descriptor> </assembly-descriptor>
|
</assembly-descriptor>
|
C:/temp/newfiles/ejb-jar.xml
を保存します。
手順 1 で作成した一時ディレクトリおよびファイルを使用して、META-INF/weblogic-ejb-jar.xml
ファイルをコンフィグレーションします。
C:/temp/working/META-INF/weblogic-ejb-jar.xml
ファイルと C:/temp/newfiles/META-INF/weblogic-ejb-jar.xml
ファイルを開きます。2 つのファイルが開いた状態になります。
C:/temp/working/META-INF/weblogic-ejb-jar.xml
ファイルで、EJB (EJB の大文字/小文字を区別します) を検索して、新しい名前に置き換えます (EJBNew など)。
注意 : 手順 2 の b で使用した名前と同じ名前を使用します。
C:/temp/working/META-INF/weblogic-ejb-jar.xml
ファイルで、BEA_content
(大文字/小文字を区別します) を検索して、新しい名前 (BEA_content_new
など) に置き換えます。
C:/temp/working/META-INF/weblogic-ejb-jar.xml
ファイルで <jndi-name>contentDataSource </jndi-name>
(大文字/小文字を区別します) を検索して、「手順 2 : 新しいリポジトリのサーバへの接続」で定義したデータ ソースに置き換えます (<jndi-name>newContentDataSource</jndi-name>
など)。
C:/temp/working/META-INF/weblogic-ejb-jar.xml
ファイルの次の箇所を C:/temp/newfiles/META-INF/weblogic-ejb-jar.xml
にコピーします。
C:/temp/working/META-INF/weblogic-ejb-jar.xml ファイルからコピーする場所 (以下のタグに囲まれた部分)
|
C:/temp/newfiles/META-INF/weblogic-ejb-jar.xml ファイルに貼り付ける場所 (以下のタグの前)
|
<weblogic-ejb-jar> </weblogic-ejb-jar>
|
</weblogic-ejb-jar>
|
C:/temp/newfiles/META-INF/weblogic-ejb-jar.xml
ファイルを保存します。
手順 1 で作成した一時ディレクトリおよびファイルを使用して、META-INF/weblogic-cmp-rdbms-jar.xml
ファイルをコンフィグレーションします。
C:/temp/working/weblogic-cmp-rdbms-jar.xml
ファイルと C:/temp/newfiles/META-INF/weblogic-cmp-rdbms-jar.xml
ファイルを開きます。2 つのファイルが開いた状態になります。
C:/temp/working/weblogic-cmp-rdbms-jar.xml
ファイルで、EJB
(EJB
の大文字/小文字を区別します) を検索して、//META-INF/weblogic-ejb-jar
で使用した名前と同じ名前に置き換えます (EJBNew
など)。
注意 : 手順 2 の b で使用した名前と同じ名前を使用します。
C:/temp/working/weblogic-cmp-rdbms-jar.xml
一時ファイルで、contentDataSource (大文字/小文字を区別します) を検索して、「手順 2 : 新しいリポジトリのサーバへの接続」で定義したデータ ソースに置き換えます (newContentDataSource など)。
C:/temp/working/weblogic-cmp-rdbms-jar.xml
ファイルの次の箇所を C:/temp/newfiles/META-INF/weblogic-cmp-rdbms-jar.xml
ファイルにコピーします。
C:/temp/working/META-INF/weblogic-cmp-rdbms-jar.xml ファイルからコピーする場所 (左のタグの最初の出現箇所から右のタグの最後の出現箇所まで)
|
C:/temp/newfiles/META-INF/weblogic-cmp-rdbms-jar.xml ファイルに貼り付ける場所 (以下のタグの最後の出現箇所の後)
|
<weblogic-rdbms-bean> </weblogic-rdbms-bean>
|
</weblogic-rdbms-bean>
|
<weblogic-rdbms-relation> </weblogic-rdbms-relation>
|
</weblogic-rdbms-relation>
|
C:/temp/newfiles
ディレクトリで、content_repo.jar ファイルを再圧縮します。既存の content_repo.jar ファイルを、編集済みの XML ファイルを含んだ同じ名前の新しいファイルで置き換えます。META-INF
ディレクトリも含めて、ファイルは必ず元のディレクトリ構造に保存してください。
新しく作成した content_repo.jar ファイルをコピーして、元のインストール ディレクトリに戻します。たとえば、WL_HOME
/weblogic81/samples/portal/portalApp/
です。
手順 4 : サーバの起動
WebLogic Server を再起動して、content_repo.jar
を再デプロイします。
手順 5 : 新しい BEA リポジトリの作成
新しいリポジトリを追加するには
Administration Portal を開きます ([スタート|プログラム|BEA WebLogic Platform 8.1 |Examples|WebLogic Portal|WebLogic Administration Portal])。
画面上部のメニューで [コンテンツ] を選択します。
左側の [コンテンツの参照と編集] ツリーで、[View] ドロップダウン メニューから [Repository] を選択します。
左側の [リポジトリの管理] ツリーで、[Virtual Content Repository] を右クリックします。
ポップアップ メニューから [リポジトリの追加] を選択します (またはエディタ ペインで [Add Repository] ボタンをクリックします)。
フィールド
|
説明
|
リポジトリ名
|
新しいリポジトリに付ける名前 (MyNewRepository など)。
|
接続クラス
|
(com.bea.content.spi.internal.RepositoryImpl )
|
注意 : 新しいリポジトリを作成する際に、テキスト パッドのドキュメントからプロパティの切り取りと貼り付けを行う場合は、後ろの空白を必ず削除します。
[Add Property] をクリックして、次のパラメータを指定します。
キー
|
値
|
NODE_OPS_HOME
|
${APPNAME}.BEA_content_ <選択した名前。この例では new>.RepoNodeOpsHome
例 : ${APPNAME}.BEA_content_RepoNodeOpsHome
|
OBJECT_CLASS_OPS_HOME
|
${APPNAME}.BEA_content_ <選択した名前。この例では new>.RepoObjectClassOpsHome
|
SEARCH_OPS_HOME
|
$${APPNAME}.BEA_content_ <選択した名前。この例では new>.RepoSearchOpsHome
|