TomcatのDataSourceはAdminToolで作成するな!!
っていうか、「server.xmlの書き換えをAdminToolでするな」という方が正しいか。
なぜなら、
「せっかくコメントなどで整えられたserver.xmlが、AdminToolを利用するとぐちゃぐちゃに書き換えられて、メンテナンス性が低くなる」
から。
Tomcatが読めればよい体裁になってしまうのだ。せっかく書いたコメントまで削られる。
そのため、アプリケーション追加などでDataSourceを作成しなければいけない場合は、そのアプリケーション用のxmlを別に用意して、webappsの下にアプリケーションと並べて配置する。
順番はこうだ、
?webapps以下に、アプリケーションwarファイルを配置する。
?Tomcat起動でデプロイ(自動展開)。
?アプリケーション名と同名のxmlファイル(コンテキストに必要な情報が入ったやつ)をwebappsに配置。
?Tomcat再起動。
ここで、xmlファイルとアプリケーションwarをいちどきに置いて、Tomcatを再起動してはいけない。
アプリケーションコンテキストxmlファイルがあると、Tomcatはアプリケーションディレクトリが既にあるものとして処理を始める。しかし、この時点でwarファイルはデプロイされていないから、「アプリケーションディレクトリがない」と怒るのだ。
だから、一度対象アプリケーションはデプロイを確認してから、xmlを配置する。
これで、わざわざDataSourceをAdminToolで作成しなくても良くなる。
?で作成する文法については詳しいサイトを参照されたい。