目的 | イディオム |
---|---|
複数の ResourceBundle を読み込む |
new ConfigSerial( ConfigConstants.MAKE_MAP, new PutResourceBundle("mypackage.myconfig0"), new PutResourceBundle("mypackage.myconfig1") ) |
セレクトでデフォルト選択値にのみスタイルを定義する | new XPath(new JXP("//OPTION[@selected]"), new UpdateAttrValue("class", new FixEL("myclass"))) |
ラジオボタン・チェックボックスでデフォルト選択値にのみスタイルを定義する | new XPath(new JXP("//INPUT[@checked]"), new UpdateAttrValue("class", new FixEL("myclass"))) |
Seasar2 のコンポーネントを取得する(2.4.0 beta 4) |
final DomContext context = new DomContext(); context.setContainer(SingletonS2ContainerFactory.getContainer()); new OGE("container.myComponent.myMethod()").getValue(context); |
ラジオボタン・チェックボックスの再生成する(プロパティ名を指定する場合はダミー識別子を使用せずに不要な部品を削除することが可能) | new XPath(new JXP("name", "name0"), new MakeRadio(new PathEL("config.name0")), HtmlConstants.REMOVE_THIS_AND_TEXTS) |
ActionDef で比較判定を定義する |
new ActionDef( new OGE("container.component0.executeInt() <= 5"), new ForwardDef("forwardIdTrue", new PathEL("container.component0"), new ForwardMatcher(Boolean.TRUE)), new ForwardDef("forwardIdFalse", new PathEL("container.component0"), new ForwardMatcher(Boolean.FALSE)) |
プリミティブ型で null とみなした値を削除する | new XPath(new JXP("//INPUT[@name=\"age\" and @value=\"-1\"]"), new RemoveAttr("value")) |
一定の単位でコンストラクタツリーを分割する |
final DomExpression function0 = ...; final DomExpression function1 = ...; final DomExpression marge = new Serial( new If(new EvalIdRegExp("function0_.*"), function0), new If(new EvalIdRegExp("function1_.*"), function1) ); |
コンストラクタツリーの生成に XML を使用する | // Seasar2 の dicon 定義を使用する。主にコンストラクタインジェクションを用いる。Seasar2 ではコンポーネントの入れ子が可能であるため、設定の構造化が維持される。 |