概要
Tomcatのwebapps/
に.warを置くと、しばらくしてフォルダに展開されWebアプリとして動くはずです。ところが、いつまでたっても404しか返さないという状況に陥ることがあります。
このとき、IDE(NetBeansで確認)からWebアプリをアンデプロイしようとしても、
FAIL - Unable to delete [***]. The continued presence of this file may cause problems.
というポップアップが出てアンデプロイに失敗してしまいました。
本記事はこの現象に対する解決策のメモです。
解決策
ポップアップのメッセージでググると解決策が説明されていました。
http://stackoverflow.com/questions/14873219/cannot-undeploy-a-web-app-completely-in-tomcat-7
[手順]
- tomcatを停止し、手動でWebアプリのフォルダを消去、またはIDE再起動後にIDEからアンデプロイを実行
- tomcatフォルダの
conf/context.xml
を開き、ルート要素<Context>
にantiResourceLocking="true"
という属性を追加(下記参照)
context.xml
<!-- Before -->
<Context>
...
</Context>
<!-- After -->
<Context antiResourceLocking="true">
...
</Context>