うーむ・・・
Struts2 の Zero Configuration が上手く機能してないような・・・
login.jspLoginAction.java
は、存在してます。
LoginAction.java は hello.lolo パッケージの下にいます。
web.xml には、
<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class><init-param><param-name>actionPackages</param-name><param-value>hello.lolo</param-value></init-param></filter>
という記述があります。
つまり、
http://localhost:8080/HelloServlet2/login.jsp
にアクセスした場合、Zero Configuration の機能で、
- hello.lolo パッケージの下の hello.lolo.LoginAction クラス(LoginAction.java)を探す。
- LoginAction クラスが見つかったら、その中の execute メソッドを実行する。
という動きをするんじゃないかね?
LoginAction クラスには、
public String execute() throws Exception {this.sessionMap.put("userId", null);this.userId = "Struts2";return "success";}
というメソッドがあるんだけど、全然実行されんなあ・・・
struts2-config-browser-plugin-2.3.31 もビルド・パスに存在している。
ちょっと原因とかわかってないんだけど、とりあえずメモ代わりに書いておきます。
昨年 struts2.1系から 最新と言うことで struts2.5系に乗り換える調査をしているのですが 同様に困って 調査中です。
別スレでも言及されていますが 本当に互換性を考えているのか疑問です。
springMVCに乗り換えようかとの意見も出ています。
解決策が見つかったら載せて下さい。
コメント、ありがとうございます。
ちょっと急ぎで別件の開発が入ったりして、調査出来てないんですが、何かあればブログに書きます。
でも、これほど互換性の無いアップデートがかかるようだと、Struts2 の採用は考えた方がいいですよねえ(^^;