[Seasar-user:11071] Re: [Teeda] Pageよりエラーを出す場合に該当する項目の色を変えたい

木村 究道 [E-MAIL ADDRESS DELETED]
2007年 10月 17日 (水) 15:22:36 JST


木村です。

FacesContext#addMessage()でできれば一番よかったのですが、
現実的ではないようですね。

ありがとうございました。

以 上

Koichi Kobayashi さんは書きました:
> 小林 (koichik) です.
> 
> Date:    Tue, 16 Oct 2007 19:52:59 +0900
> From:    木村 究道 <[E-MAIL ADDRESS DELETED]>
> To:      [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:11037] [Teeda] Pageよりエラーを出す場合に該当する項目の色を変えたい
> 
>> Pageクラスから直接エラーを出す場合のやり方は
>> http://www.seasar.org/wiki/index.php?FAQ%2FTeeda#q79cd033
>> ↑で出来ますが、合わせて該当する項目の文字色や背景色を変
>> 更できないでしょうか?
> 
> FacesContext#addMessage() を使えばできないことは
> ないようです.
> 以下のようになります.
> 
> FacesContext context = FacesContext.getCurrentInstance();
> FacesMessage message = 
>     new FacesMessage(FacesMessage.SEVERITY_ERROR, "summary", "detail");
> context.addMessage("layoutChildBody:addForm:arg1", message);
> 
> FacesMessage の第 2 および第 3 引数には
> メッセージの概要および詳細を指定します.
> 
> 問題は FacesContext#addMessage() の第 1 引数で,
> 上記の例はレイアウトを使っていて,<form id="addForm">
> の中にある <input id="arg1"> に対するメッセージを
> 設定する場合の指定になります.
> ただし,ForEach などを使っていると指定の仕方が
> 変わりますし,Teeda のバージョンアップによっても
> 変わる可能性が無いとは言えないところなので,
> 推奨できるやり方ではありません.
> 
>> また、DynamicPropertyで出来そうなのですが、一つ一つの項目
>> に対して設定が必要みたいですので、入力項目が多い画面では
>> かなり大変になりそうなのです。
> 
> 手間はかかってもこちらの方が無難だと思います.
> 
> 

-- 
-----------------------------------------------------
 十八ソフトウェア株式会社
 システム開発部 アプリケーション開発課  木村 究道
 〒850-0861 長崎市江戸町6-5江戸町センタービル6F
 TEL:095-824-0018  FAX:095-827-8754
 E-mail: [E-MAIL ADDRESS DELETED]
-----------------------------------------------------



Seasar-user メーリングリストの案内