デフォルト・データ・ソースの使用
Oracleでは、Java EE 7準拠ランタイムで必要なデフォルト・データ・ソースを提供しています。この事前構成済データ・ソースは、WebLogic ServerとともにインストールされたDerbyデータベースにアクセスするためにアプリケーションで使用できます。
- デフォルト・データ・ソースとは
Oracleでは、Java EE 7準拠ランタイムで必要なデフォルト・データ・ソースを提供しています。 - カスタム・デフォルト・データ・ソースの定義
java:comp/DefaultDataSource
にバインドされたカスタム・データ・ソース記述子を定義するか、デフォルトのデータ・ソースをオーバーライドして別のJNDI名を指すようにすることで、カスタムのデフォルト・データ・ソースを実装できます。 - デフォルト・データ・ソースを使用する場合の互換性の制限
デフォルトのデータ・ソースを使用する場合の制限について学習します
親トピック: JDBCデータ・ソース・タイプ
デフォルト・データ・ソースとは
Oracleでは、Java EE 7準拠ランタイムで必要なデフォルト・データ・ソースを提供しています。
これには次のJNDI名でアクセスできます。
java:comp/DefaultDataSource
上記のメッセージは下のメッセージと同じです。
@Resource(lookup="java:comp/DefaultDataSource")
DataSource myDS;
データ・ソース・リソース参照をデフォルト・データ・ソースに明示的にバインドするには、resourceアノテーションのlookup要素またはresource-ref
デプロイメント記述子要素のlookup-name要素を使用できます。
ノート:
Derbyデータベースは、デフォルトではstartWebLogic
コマンドによって起動されます。WebLogic Serverインスタンスの起動および停止の詳細は、『Oracle WebLogic Serverサーバーの起動と停止の管理』の「サーバーの起動と停止」を参照してください。
デフォルト・データ・ソースの特性
デフォルト・データ・ソースには、次の特性があります。
-
デプロイされているコンポーネントごとに使用できる必要があります。
-
デプロイ済コンポーネントでのみアクセス可能で、システム・リソースまたはスタンドアロン・デプロイメントであるデータ・ソースではアクセスできません。
-
参照が行われた後にのみコンソールに表示されます。
-
他のJava EEデプロイメントのように、コンポーネントごとにデプロイメントとして表示されます。
-
構成できません。
-
関連付けられたアプリケーションのライフサイクルを持ちます
デフォルト・データソースの構成
次の表では、WebLogic Serverのデフォルト・データ・ソースの定義を規定する構成設定を提供します。
表4-1 デフォルト・データ・ソースの構成
属性 | 値 |
---|---|
名前 | java:comp/DefaultDataSource |
初期容量 | 0 |
最小容量 | 0 |
最大容量 | 15 |
クラス名 | org.apache.derby.jdbc.ClientDataSource |
ポート | 1527 |
ホスト | localhost |
データベース名 | DefaultDataSource |
ユーザー | none |
パスワード | none |
トランザクション | false |
MaxStatements | 0 |
MaxIdleTimeout | 未設定 |
親トピック: デフォルト・データ・ソースの使用
カスタム・デフォルト・データ・ソースの定義
java:comp/DefaultDataSource
にバインドされたカスタム・データ・ソース記述子を定義するか、デフォルトのデータ・ソースをオーバーライドして別のJNDI名を指すようにすることで、カスタムのデフォルト・データ・ソースを実装できます。
参照:
コンポーネントのデプロイ後、コンポーネントでjava:comp/DefaultDataSource
を使用できない場合、WebLogic Serverの事前構成済デフォルト・データ・ソースをコンポーネントで使用できます。ただし、startWebLogic.sh
スクリプトを実行する前に、DERBY_FLAG=false)
を設定してDerbyデータベースを無効化した場合、WebLogic Serverの事前構成済デフォルト・データ・ソースは使用できません。
カスタム・デフォルト・データ・ソース・ディスクリプタの作成
事前構成済デフォルト・データ・ソースのかわりとなるjava:comp/DefaultDataSource
にバインドされたデータ・ソース・ディスクリプタを構成できます。たとえば、次にEARアプリケーションのJava EE 6の注釈を示します。
@Stateless(mappedName="DSBean")
@DataSourceDefinition(name="java:comp/DefaultDataSource",
className="oracle.jdbc.OracleDriver",
portNumber=1521,
serverName="myServer",
databaseName="myDB",
user="a username",
password="a password",
transactional=false
)
public class DSBean implements DSInterface
. . .
デフォルト・データ・ソースのオーバーライド
別の既存のデータ・ソースを指し示すようにサーバーまたはサーバー・テンプレートの構成でデフォルト・データ・ソース属性のJNDI名を更新して、WebLogic Serverで提供される事前構成済デフォルト・データ・ソースをオーバーライドできます。
親トピック: デフォルト・データ・ソースの使用
デフォルト・データ・ソースを使用する場合の互換性の制限
デフォルトのデータ・ソースを使用する場合の制限について学習します。
Weblogic Server 12.2.1より前のリリースでは、WebLogic Serverは、res-ref
の名前を使用してJNDIのデータ・ソースをルックアップすることで、未解決のデータ・ソースres-ref
参照を自動的に解決しようと試みます。この動作は、Java EE 7より前では定義されていません。このWebLogic Serverリリースでは、Java EE 7の定義に従ってデフォルト・データ・ソースを使用します。
親トピック: デフォルト・データ・ソースの使用