modelもHOTReloading対応になったみたい。

昨日slim3が変わったらしい。↓
http://groups.google.co.jp/group/slim3-user-japan/browse_thread/thread/8e70aba5bfd34424
と、いうことでmodelもHOTReloadingの対象になったみたい!やった。
久しく触っていないTODOサービス(Slim3で作ったTODOリストサービス - ありの日記もこの対応をしてみた。

変更したのは、上のリンク先のひがさんのコメントにもあるように。

  • war/WEB-INF/web.xml
  • src/META-INF/jdoconfig.xml

そして、ライブラリなどもslim3itプロジェクトからもってきて最新に

  • war/WEB-INF/libの中身(一応全部)

そして、試しにサーバを起動した状態でモデルクラスを変更してみる。すると、
下記のようなエラーがでるけど、

javax.jdo.JDOFatalUserException: No metadata has been registered for class slim3.model.Task.

きっとMetaクラスが生成されるときのタイムラグだと思う。数秒後にアクセスすると問題なく変更が反映された!すごい。
注意点として以下のことがあげられてますね。覚えとかないと。

Singleton、ServletのFilter、ContextListenerなどは、
root.coolパッケージ配下に置くようにしてください。
root.cool.service, root.cool.servlet ...

HOT reloadableなクラスは、coolなクラスにアクセスできますが、
coolなクラスは、HOT reloadableなクラスにアクセスすることはできません。

http://groups.google.co.jp/group/slim3-user-japan/browse_thread/thread/8e70aba5bfd34424