| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
52 バイト追加 、 2020年2月16日 (日) 04:35
編集の要約なし
==[[XWork2 特徴]]==
http://wiki.opensymphony.com/display/XW/XWork+Features
=====XWorkについて=====
XWorkは、コマンドパターンのフレームワークで、Struts2の XWorkは、コマンドパターンのフレームワークで、[[Struts2]]の コアとして利用されている。*設定方法が、シンプルであるため、柔軟でカスタマイズし易い。設定をXMLに記述することや、プログラムに記述することもできる。設定方法が、シンプルであるため、柔軟でカスタマイズし易い。設定を[[XML]]に記述することや、プログラムに記述することもできる。
*コアコマンドパターンフレームワークは、どんな request/response にも、interceptors を利用して、カスタマイズや拡張が可能。
*組み込みの型変換や、action プロパティのバリデーションは、[http://www.ognl.org/ OGNL]を利用する。
public static final String SUCCESS = "success";
public static final String NONE = "none";
public static final String ERROR E[[R]][[R]]O[[R]] = "error";
public static final String INPUT = "input";
public static final String LOGIN = "login";
デフォルトのActionProxyを取得する例
ActionProxyFactory.getFactory().createActionProxy("", "viewBook[[vi]]ewBook", objectMap);
自分自身で実装したActionProxywo登録する必要があれば、factoryで、次のように。
===簡単な例===
最初に、単純なJavaBeanによる例最初に、単純な[[Java]]Beanによる例
public class Book {
String id;
// set the ActionContext parameters
Map context = new HashMap();
context.put(ActionContext.PARAMETERSPA[[R]]AMETE[[R]]S, paramMap);
// create an action proxy with no namespace, action alias (defined in xwork.xml), and a map of the context info
ActionProxy proxy = ActionProxyFactory.getFactory().createActionProxy("","viewBook[[vi]]ewBook", context);
// we have the action proxy instance, lets execute it and retrieve the action
// forward to another inventory source
} else {
throw new RuntimeException[[R]]untimeException("Im lazy");
}
これだけで終わりではありません。いくつかの設定をxwork.xmlにする必要があります。そうすることで、XWorkは、createActionProxy(...)メソッドで、利用するエイリアスに対応する適切なクラスを見つけ出すことができます。
<include file="xwork-default.xml"/>
<package name="default" extends="xwork-default">
<action name="viewBook[[vi]]ewBook" class="com.opensymphony.xwork.example.ViewBookAction"/>
</package>
</xwork>
----
{{amazon|4839917779}}

案内メニュー