Lazy Diary @ Hatena Blog

PowerShell / Java / miscellaneous things about software development, Tips & Gochas. CC BY-SA 4.0/Apache License 2.0

Tomcat の「配備解除」

Tomcat の Web Application Manager であるアプリケーションを「配備解除」すると、そのアプリケーションのコンテキストに割り当てられたデータソースやデータリンクの情報は消去されてしまう。ログファイルに次のようなメッセージが残るのが特徴的。

javax.naming.NameNotFoundException: 名前 xxxxxxxx はこのコンテキストにバインドされていません

解決方法としては、.war ファイルを作って Web Application Manager から配備・配備解除をするのではなく、Web Application Manager でそのアプリケーションを [停止] した後に、直接ファイルの置き換えを行うこと。.jsp や .class 以外にも変更が動作に影響するファイル(web.xml など)があればそれも操作の対象とする。