なにか作る

なにかを作るブログです。

GlassFishにリソースを追加する方法4つまとめてみた

GlassFish4を用いてJava EEの開発環境を整えていた時に知った、GlassFishにリソースを追加する方法4つについてまとめてみる。

  1. GUI (GlassFish Server Administration Console) を使って登録する。
  2. CUI (asadmin) の各種サブコマンド (e.g. create-jdbc-connection, create-jdbc-resource) を使って登録する。
  3. WebアプリケーションのWEB-INFディレクトリ以下にglassfish-resources.xmlを配置する。
  4. CUI (asadmin) のadd-resourcesサブコマンドを使って登録する。

1. GUI (GlassFish Server Administration Console) を使って登録する。

GlassFishを起動した後にhttp://localhost:4848にアクセスすれば、ブラウザから各種設定が可能。これに関しては特に説明不要だろう。あんまりとっつきやすいインターフェースではないが、一番簡単。

2. CUI (asadmin) の各種サブコマンド (create-jdbc-connection, create-jdbc-resourceなど) を使って登録する。

GlassFish

コネクションプールの追加ならこんな感じ。

JDBCリソースの登録ならこんな感じ。

3. WebアプリケーションのWEB-INFディレクトリ以下にglassfish-resources.xmlを配置する。

WebアプリケーションのWEB-INFディレクトリ以下にglassfish-resources.xmlを配置すると、アプリケーションのデプロイ時にGlassFishxmlの記述内容に従ってリソースを自動的に登録してくれる。この方法ならプロジェクトの中にxmlファイルを入れておけば、各開発環境上で個別にリソースを登録するような必要がなくなる。開発時にはこれが便利だと思う。

4. CUI (asadmin) のadd-resourcesサブコマンドを使って登録する。

先ほどはWEB-INFディレクトリ下に配置したglassfish-resources.xmlだが、asadminコマンドを使えば直接取り込むことも可能。

ちなみにWEB-INFに配置する時と違って、ファイル名はglassfish-resource.xmlでなくてもよい。

その他

この記事を書いている最中にこんな記事を見つけてしまった。

https://blogs.oracle.com/enterprisetechtips/entry/datasource_resource_definition_in_java

もしかしたらアプリケーションサーバー固有のやり方に頼らずにデータソースを定義することができるのかも。今度試してみよう。