昨日のコード

昨日試したコードです。
AddPage.javaを改変


protected void calc() {
final String s1 = params.get("arg1")[0];
final String s2 = params.get("arg2")[0];
final String s3 = params.get("arg3")[0];
try {
int arg1 = Integer.valueOf(s1);
int arg2 = Integer.valueOf(s2);
int arg3 = Integer.valueOf(s3);
int result = this.calcService.calclate(arg1, arg2, arg3);
request.setAttribute("result", result);
} catch (Exception e) {
request.setAttribute("message", "add error!");
}
}

CalcServiceImpl.javaに追加(もちろnCalcServiceにも追加)


@Override
public int calclate(int arg1, int arg2, int arg3) {
return arg1 + arg2 + arg3;
}

こんな感じで動かしました。
@ActionParamで分かりにくいと思ったのはここです。


@POST
@ActionParam
public Navigation add(WebContext context) {
// Injector自体をInjectしてrequestを取得する場合
// HttpServletRequest request =
// injector.getInstance(HttpServletRequest.class );
calc();
return Forward.to("/pages/add.jsp");
}

@POST
@ActionParam("add2.x")
public Navigation imgTest(WebContext context) {
calc();
return Forward.to("/pages/add.jsp");
}

@POST
@ActionParam()
public Navigation hoge(WebContext context) {
calc();
return Forward.to("/pages/add.jsp");
}

T2のFAQではGoogle Code Archive - Long-term storage for Google Code Project Hosting.に@ActionParam("add2.x")はIE用と書いてあったのですが、するとimgTestというメソッド名は気にしなくてもいいということなのかな?ブラウザがFireFoxでも".x"は認識するの?するとhogeは何?という感じで??となってしまいました。
Guiceについては、うーん、ちょっと好みではない感じです。T2 Samplesで試した方がいいかも・・・

jspをのせようとしたのですが、コードをそのままのせる方法が分かりませんでした・・