記憶庫

自分用のメモです。

WildFlyにJDBCデータソースを設定する

手順

PostgreSQL JDBCドライバの入手

以下のサイトから、最新のPostgreSQL JDBCドライバを入手する。

jdbc.postgresql.org

JDBCドライバのデプロイ

WildFly管理コンソールのメニューの「Deployments」をクリックする。

画面左上の"Add"ボタンをクリックする。

選択項目から「Upload Deployment」を選択する。

「Add Deployment」画面が表示されるので、前項で入手したPostgreSQL JDBCドライバをドラッグ&ドロップする。

"Next>>"ボタン、"Finish"ボタンをクリックする。

画面の左側に、アップロードしたファイル名が表示されていることを確認する。

JDBCデータソースの設定

管理コンソールを、"Configuration" ⇒ "Subsystems" ⇒ "Datasources" ⇒ "Non-XA" と辿り、画面右上の"Add"ボタンをクリックする。


【要精査】Non-XAだと2フェーズコミットが出来ないはず。それでいいか検証。


ラジオボタンの選択項目から、一番上の"Custom"を選択し、"Next>>"ボタンをクリックする。


Nameに以下を設定する。

ChameleonReadCommitted


JNDI Nameに以下を設定する。ここで設定したJNDI名は、Webアプリケーションから参照される。

java:/jdbc/ChameleonReadCommitted


※ NameとJNDI Nameは、後で設定するトランザクション分離レベルが判るような名前にしておく(ここではREAD COMMITTEDに設定する)。


"Next>>"ボタンをクリックする。


ダイアログ上部の"Detected Driver"をクリックすると、先ほどデプロイした "derbyclient-10.12.1.1.jar" がリストに表示されるので、選択して"Next>>"ボタンをクリックする。


Connection URLに、以下を設定する。

jdbc:derby://localhost:1527/C:/Users/Equinox/Chameleon;create=true

"Next>>"ボタン、"Finish"ボタンをクリックする。


Datasourceの列に "ChameleonReadCommitted" が追加されたことを確認する。

トランザクション分離レベルの設定

作成した "ChameleonReadCommitted" の右側にあるプルダウンの "View" をクリックすると、データソースの編集画面が表示されるので、"Connection"タブをクリックする。

接続設定の画面が表示されるので、"Edit"リンクをクリックすると、画面が編集モードになるので、Transaction Isolation: の項目から TRANSACTION_READ_COMMITTED を選択し、"Save"ボタンをクリックする。

TODO:"Save"ボタンをクリックすると、"The Data Source ChameleonSerializable is still enabled. Please disabled it, to make changes to the configuration."メッセージが表示される。

疎通確認

管理コンソールを"Configuration" ⇒ "Subsystems" ⇒ "Datasources" ⇒ "Non-XA" ⇒ "ChameleonDS"と辿り、"View"をクリックする。

"Connection"をクリックし、"Test Connection"ボタンをクリックする。

ダイアログがポップアップし、メッセージ "Successfully created JDBC connection." が表示されれば疎通OK。