% と $
webworkのタグライブラリでは式言語を使うときに「%」を付けます。
MayaaResultを使うと、「$」を付けます。
基本的にこれらで取れる値は同じはずですよね?
でも、違うみたいなんです。
試しに出力してみたんですけど、見た目は同じようなんですけど、
タグの引数に渡すと違う動きをする。
public class TestAction extends ActionSupport{ private List list; private String selected; public String execute(){ list = //プロパティ key value を持つオブジェクトのList値をセット; return SUCCESS; } public List getList(){ return list; } public void setSelected(String str){ selected = str; } }
<ww:select name="test" value="%{str}" list="%{list}" listKey="key" listValue="value" />
と書くと思うんですけど、このときlistに含まれるstrを指定してるんですけど、selectedにならない。でも、こう書くとselectedになる。valueの所を「$」にしただけです。
<ww:select name="test" value="${str}" list="%{list}" listKey="key" listValue="value" />
ちなみに、こう書くとエラーになった。listのところを「$」にしただけです。
<ww:select name="test" value="%{str}" list="${list}" listKey="key" listValue="value" />
良く分からん。
「$」と「%」が混在するのは避けたいので「$」で統一したいんだけど無理なんかな。