デフォルトのデータベース

Jetspeed 2 と一緒に配布されるデフォルトのデータベースは Hypersonic SQL Java Database (HSQL) です。HSQL は Jetspeed 2 とは別の自身のプロセスとして実行されます。HSQL は本番環境に使うレベルのデータベースではありませんが、素早く起動し実行されます。もっと堅牢はデータベースに切替えるには、次のセクションの以降の手順を読んでください。

MySQL

MySQL を使って実行するには、$HOME/build.properties に次のようなプロパティを追加してください。

				

# -------------------------------------------------------------------------
# MySQL テストデータベースの設定 (ユニットテストを実行するときのみ必要)
# -------------------------------------------------------------------------
org.apache.jetspeed.test.database.default.name=mysql
org.apache.jetspeed.test.database.url = jdbc:mysql://j2-server/j2test
org.apache.jetspeed.test.database.driver = com.mysql.jdbc.Driver
org.apache.jetspeed.test.database.user = jetspeed2
org.apache.jetspeed.test.database.password = whatever
# -------------------------------------------------------------------------
# MySQL 本番環境データベースの設定
# -------------------------------------------------------------------------
org.apache.jetspeed.production.database.default.name=mysql
org.apache.jetspeed.production.database.url = jdbc:mysql://j2-server/j2
org.apache.jetspeed.production.database.driver = com.mysql.jdbc.Driver
org.apache.jetspeed.production.database.user = jetspeed2
org.apache.jetspeed.production.database.password = whatever
# -------------------------------------------------------------------------


			

先の例では、「j2-server」という名前のサーバで MySQL サーバが実行されている必要があり、そのデータベースサーバに「j2」という本番環境用のデータベースがある必要があります。

もしユニットテストを実行したいのであれば、加えて「j2test」というデータベースも必要です。

以上の「j2」と「j2test」データベースに対して、「jetspeed2」というユーザが権限を持っている必要があります。

MySQL の既知の問題

なし

Oracle

Jetspeed 2 を Oracle で実行するには、以下のプロパティが $HOME/build.properties に必要です。

				

# -------------------------------------------------------------------------
# Oracle テストデータベースの設定 (ユニットテストを実行するときのみ必要)
# -------------------------------------------------------------------------
# org.apache.jetspeed.test.database.default.name=oracle
# org.apache.jetspeed.test.database.ojb.platform=oracle9i
# org.apache.jetspeed.test.database.url = jdbc:oracle:thin:@j2-sever:1521:j2db
# org.apache.jetspeed.test.database.driver = oracle.jdbc.driver.OracleDriver
# org.apache.jetspeed.test.database.user = j2test
# org.apache.jetspeed.test.database.password = whatever
# -------------------------------------------------------------------------
# Oracle 本番環境データベースの設定
# -------------------------------------------------------------------------
# org.apache.jetspeed.production.database.default.name=oracle
# org.apache.jetspeed.production.database.ojb.platform=oracle9i
# org.apache.jetspeed.production.database.url = jdbc:oracle:thin:@j2-server:1521:j2db
# org.apache.jetspeed.production.database.driver = oracle.jdbc.driver.OracleDriver
# org.apache.jetspeed.production.database.user = j2
# org.apache.jetspeed.production.database.password = whatever
# -------------------------------------------------------------------------


			

先の例では、「j2-server」という名前のサーバで Oracle サーバが実行されている必要があり、サーバに「j2db」というオラクルデータベース SID が登録されている必要があります。そして、本番環境用に「j2」というデータベースユーザ (スキーマ) が必要です。

もしユニットテストを実行するのであれば、加えて「j2test」というユーザも必要です。

Oracle の既知の問題

Oracle 用にデータベースを作成する際には最初に一回だけ drop ステートメントに関する注意が必要です。この問題を回避するには、$HOME/build.properties 内のプロパティを先に挙げたように設定し、それから Jetspeed 2 Maven plugin を使った以下のようなコマンドを実行します。

					

maven j2:db.scripts.gen
maven j2:dropdrops
maven j2:db.create.test (ユニットテストを実行するときのみ)
maven j2:db.create.production


				

ドライバ

JDBC ドライバは、指定する JDBC ドライバの jar ファイルを Maven クラスパスに追加することによって、Maven のビルドで実行するように設定されます。jar ファイルは $HOME/build.properties 内の org.apache.jetspeed.test.jdbc.drivers.pathorg.apache.jetspeed.production.jdbc.drivers.path というプロパティに指定します。

注意: Hypersonic JDBC ドライバは Jetspeed と一緒に配布されるので、設定の必要はありません。

				

# テスト及び本番環境用の MySQL ドライバの例
org.apache.jetspeed.test.jdbc.drivers.path=
     /Portal/lib/MySQL/mysql-connector-java-3.0.8-stable-bin.jar
org.apache.jetspeed.production.jdbc.drivers.path=
     /Portal/lib/MySQL/mysql-connector-java-3.0.8-stable-bin.jar

# テスト及び本番環境用の Oracle 9i ドライバの例
org.apache.jetspeed.test.jdbc.drivers.path=
     /Portal/lib/oracle/ojdbc14.jar;/Portal/lib/oracle/nls_charset12.jar
org.apache.jetspeed.production.jdbc.drivers.path=
     /Portal/lib/oracle/ojdbc14.jar;/Portal/lib/oracle/nls_charset12.jar

# テスト及び本番環境用の Oracle 8i ドライバの例
org.apache.jetspeed.test.jdbc.drivers.path=
     /Portal/lib/oracle/classes12.jar;
org.apache.jetspeed.production.jdbc.drivers.path=
     /Portal/lib/oracle/classes12.jar;


			

ドライバの配布

Jetspeed を Maven の deploy ターゲットを使ったアプリケーションサーバへの配備の際は、Hypersonic JDBC ドライバだけがウェブアプリケーションにコピーされます。指定するドライバ (Oracle や MySQL など) を配布するには、ドライバをアプリケーションサーバの共用のクラスパスにコピーする必要があります。

アプリケーションサーバ手順
Tomcat 5 および 5.5 ${TOMCAT_HOME}/endorsed/ へドライバをコピー

Jetspeed 2 のデータソースの設定

Jetspeed 2 は、配備するアプリケーションサーバ内でデータソースを設定する必要があります。更なる情報は、RDBMS component documentation を参照してください。