2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Libertyサーバー構成ファイル(server.xml)のオーバーライド

Posted at

はじめに

IBM WebSphere LibertyまたはOpen Liberty(以下Libertyと表記)では、server.xmlというサーバー構成ファイルを記述することで、利用するJava EE(Jakarta EE)のフィーチャーを選択的に指定したり、データソースや共有ライブラリー、セキュリティー設定などを定義します。これらの記述項目の中には開発環境/テスト環境では本番環境と異なる値を指定する必要があるものもあります。例えばデータソース定義に指定するデータベース・サーバーのホスト名は、開発環境/テスト環境ではそれぞれの環境用のデータベースを使うので異なるホスト名を指定するでしょう。
このような場合に、本番用のserver.xmlファイルを修正することなく設定値をオーバーライドすることができるので、その方法を紹介します。

Libertyサーバー構成情報の定義階層

server.xmlを含むLibertyサーバーの構成情報は以下の3箇所から、この順番で読み込まれます。

  1. ${server.config.dir}/configDropins/defaults/
  2. ${server.config.dir}/server.xml
  3. ${server.config.dir}/configDropins/overrides/

2番目のserver.xmlは必須で、1番目のdefaultsディレクトリーと3番目のoverridesディレクトリーはオプションです。defaultsディレクトリーとoverridesディレクトリーには複数のXMLファイルを配置できます(各ディレクトリー内のファイルはファイル名を小文字に変換してソートしたうえで順に読み込まれます)。defaultsディレクトリーには、複数のLibertyサーバーに共通のデフォルト定義情報を記述したXMLファイルを配置します。overrideディレクトリーがオーバーライド用定義ファイルの配置場所で、当該フォルダーに追加/上書き用の定義情報を記述したXMLファイルを配置することで、1番目+2番目(server.xml)の定義情報をオーバーライドできます。
以下は、${server.config.dir}がwlp/usr/servers/defaultServerの場合のイメージです。

wlp
|               
+---usr
    |       
    +---servers
        |
        +---defaultServer
            |   server.xml
            |
            +---configDropins
                |
                +---defaults
                |     ここにデフォルトを記述したファイルを配置
                +---overrides
                      ここにオーバーライドする定義情報を記述したファイルを配置

server.xmlのオーバーライドの方法

server.xmlをオーバーライドする部分を記述したXMLファイルを作成し、${server.config.dir}/configDropins/overrides/に配置します。以下はDataSourceをオーバーライドする例です。ファイル名はoverride.xmlとしましたが何でも構いません。

override.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<server description="new server">
	<dataSource id="SampleDataSource" jndiName="jdbc/db2/SAMPLE">
	    <jdbcDriver libraryRef="DB2JCCLib"/>
	    <properties.db2.jcc databaseName="SAMPLE" serverName="localhost" portNumber="25000" 
	     currentSchema="DB2ADMIN" user="db2admin"  password="password" />
	</dataSource>
</server>

参照情報

  1. Open Liberty: Server configuration overview#server-xml
2
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?