warの更新

Tomcat5.5.9にしたら、webappsの下にあるwarを更新しただけでは展開されなくなってしまった。
もちろんアプリもホストも自動更新を可にしている。

server.xmlにautoDeploy="ture"とか追記してもだめだなぁ・・・。

ドキュメントにはre-deployができると書いてあるのだが*1

仕方がないので、warをコピーする前にantからundeployすることに。


・・・warだけ消されるのですが???


undeployとremoveが同じ挙動をしているのが解せない。

こうだと思っていたのだが・・・

  1. undeploy=>warは削除しない
  2. remove=>warも削除する

仕方がない(その2)。
build.xmlのwar作成後の手順をこのように。

  1. undeploy実行(warが消される)
  2. remove(アプリが消される・・・が、この段階でdeployすると"配備済"と怒られ、JNDIの定義なども消されていない)
  3. Tomcat停止(execを使ってcatalina.shを叩く)
  4. warをwebapps/にコピーする
  5. Tomcat起動

これでなんとか。


自動更新できないのはえらい不便だ。