webwork + RIFE

試してみた。
ActionSupportのpauseメソッドはXWork1.1から追加されたようです。
XWorkの公式サイトではまだ出てないけど、webowrk2.2のbetaには含まれています。
下記のようなActionを作成。


package test;
import com.opensymphony.xwork.ActionSupport;

public class RIFEAction extends ActionSupport {

private String name;

public String execute() {
name = "BEFORE";
pause(SUCCESS);
name = "AFTER";

return SUCCESS;
}

public String getName() {
return name;
}
}

そしてJSP


<%@ taglib uri="webwork" prefix="ww" %>







これでボタンを押すたびに表示が「BEFORE」「AFTER」と変化します。
URLに下記のような識別IDが付加されていました。

continue=8ee7f821008be7a510c6071925a346c8


webwork.propertiesに下記の一行を追加する必要があります。


webwork.continuations.package = test
この指定でどのパッケージのActionを対象にするか決めているようです。
ちなみにデフォルトパッケージでは動きませんでした、何かパッケージを指定しないといけないようです。


あと2.2からはJSPのカスタムタグの属性への書き方が変わっているようでした。
以前は単に文字を表示する場合は「'」で囲む必要があったのですが、
今回は必要ありませんでした。最近JSPを触ってないので何ともいえませんが。


とりあえず動きました。