Hotdeployできない!?
ありゃ????
trunkのS2StrutsExampleがHotdeployできなくなってる。。。なぜだろう!?
うーむ。。。rc-1に下げてためてみるかな。。。
[追記]
s2-frameworkをrc-1にしたらHotdeployできた。
うーむ。。。
HotdeployClassLoaderの変更が影響しているみたい。
PlugInで起動時にActionクラスとかを読み込んでるのが原因みたい。
とりあえず、AutoStrutsConfigRegisterPlugInをちょっと変更して
public void init(ActionServlet actionServlet, ModuleConfig config) throws ServletException { S2ContainerBehavior.Provider provider = S2ContainerBehavior.getProvider(); if (provider instanceof HotdeployBehavior) { HotdeployBehavior ondemand = (HotdeployBehavior) provider; ondemand.start(); try { register(actionServlet, config); } finally { ondemand.stop(); } } else { register(actionServlet, config); } } private void register(ActionServlet actionServlet, ModuleConfig config) throws ServletException { try { this.classFinder.find(isEnableJar(), getJarFilePattern()); if (actionServlet != null) { this.classFinder.find(actionServlet, isEnableJar(), getJarFilePattern()); } if (getReferenceClass() != null) { this.classFinder.find(ClassUtil.forName(getReferenceClass())); } getConfigRegister().register(config, this.classFinder.getClassCollection()); } finally { this.classFinder.destroy(); } }
みたいな感じにしたらHotdeployできた。
組み込むべきかな。。。Hotdeployしなくても影響ないし。