[Seasar-user:2472] [S2JSF] ビジネスロジック内での FacesContext の取得
松山 大樹
t.matsuyama
2005年 8月 4日 (木) 17:41:56 JST
松山と申します。
S2JSF いろいろ試してます。それでひとつ質問があります。
<input type="submit" value="登録" m:action="#{registBean.regist}" />
のように、html から実行されるビジネスロジックがあり、この中で、
FacesContext を使用したい場合、どのようにすればいいのでしょう?
private FacesContext context = null;
public setContext(FacesContext aContext) {
context = aContext;
}
public String regist() {
:
処理
:
return "ok";
}
とやっておいて、dicon ファイルで、
<component name="registBean" class="jp.co.hoge.RegistBean" />
<component name="context" class="javax.faces.context.FacesContext" />
と定義したら、java.lang.InstantiationException と怒られました。
あたりまえですね。
なぜ、こんなことをやりたいかというと、regist() で発生したエラーメッセージなどを、
ソース内にハードコーディングしたくないからなのですが。
バリデータの場合、
FacesMessage errorMessage = MessageFactory.getMessage(aContext, "error.field1And2");
throw new ValidatorException(errorMessage);
とやりますが、これと同じことをやりたいのです。
Seasar-user メーリングリストの案内