http://www.cyokodog.net/blog/first-struts2/


・セットアップ関係
http://qiita.com/alpha_pz/items/bd1fc9575a920f1560c8
    旧時代の名残り

    Struts2は標準でテンプレートエンジンであるFreeMarkerを使って、HTML4時代のUI+JavaScriptの生成やタグの生成をします。
    ただしこの自動生成するタグ、今となっては余計なお世話状態であり、HTMLのタグについては標準のHTMLだけを出して欲しいことが多々あります。
    今回はそれをさせない方法です。
    プロパティファイルに次の宣言をするだけ

    struts.propertiesファイルに、以下の1行を記載します。
    struts.properties
    struts.ui.theme=simple
・起動時エラー関係
http://qiita.com/alpha_pz/items/e273faff1cc8b4a1dc7f
    Struts2.5←2.3.xの移行について

http://stackoverflow.com/questions/28167771/java-lang-classnotfoundexception-org-apache-struts2-dispatcher-ng-filter-struts

    if you are using struts2 version 2.5 you need to change from org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter to org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter


http://oshiete.goo.ne.jp/qa/7873045.html
    ◆フィルタを変更します。
    サンプルにある org.apache.struts2.dispatcher.FilterDispatcherは現在、非推奨です。
    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilterをお使いください。

    ◆Actionクラス
    @Results、@Resultアノテーションは、Struts2.1よりConventionプラグインへ移行しましたので、インポートするパッケージが異なります。

    import org.apache.struts2.convention.annotation.Result;
    import org.apache.struts2.convention.annotation.Results;

    ◇Result指定
    @Resultで指定する属性も変更になりました。

    @Result(name = "hello1", location = "index.jsp")

    このように、locationを使います。
    また、type属性も、クラス名.classではなくなり、文字列(エイリアス)で指定します。

    @Result(name = "hello2", location = "jump.jsp", type = "redirect"),
    @Result(name = "recipe", location = "jump!recipe", type = "redirectAction"),




http://aoking.hatenablog.jp/entry/20121031/1351641785
    くらすぷらっとふぉーむ





・struts 2.3
http://d.hatena.ne.jp/shishido-felica/20140529/1401330413
import org.apache.struts2.config.Result;
がないってエラーが出る。

解決方法
struts2-codebehind-plugin-2.3.16.3.jar
を追加。


・struts 2.5
http://qiita.com/alpha_pz/items/4a97df916102dad2e2bc
@Namespace("/sample")
@ParentPackage("struts-default")
@Results({
    @Result(name = ActionSupport.SUCCESS, location = "index.jsp" , type="dispatcher"),
})
@ExceptionMappings({
    @ExceptionMapping(exception="java.lang.Exception" , result="exception")
})
public class SampleAction extends ActionSupport {
    @Action("display")
    public String sample() throws Exception {
        return SUCCESS;
    }
}