[Seasar-user:13997] Re: [Teeda]Foreach + 動的バリデーションのIndex番号の取得について【解決】

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2008年 4月 29日 (火) 19:56:07 JST


山下です。

いつもお世話になっております。
小林様、ありがとうございました。

下記のようにコーディングし、対応できました。
誠にありがとうございました。

<div><span id="yyyMsg" class="error" te:escape="false"/></div>

public FacesContext facesContext;
public String getYyyMsg() {
    StringBuilder msg = new StringBuilder();
    facesContext.getMessages();
    for (int i = 0; i < yyyItems.length; ++i) {
        Iterator<FacesMessage> it = facesContext.getMessages("Form:yyyItems:" + i + ":hoge")
;
        while (it.hasNext()) {
            String s = it.next().getDetail();
            msg.append(s);
            msg.append("<br />");
        }
    }
    return new StringBuilder(msg).toString();


----- Original Message ----- 
送信者: Koichi Kobayashi<[E-MAIL ADDRESS DELETED]>
宛先: [E-MAIL ADDRESS DELETED]
日付:Friday, April, 25, 2008, 05:00 PM
件名: [Seasar-user:13952] Re:[Teeda]Foreach + 動的バリデーションのIndex番号の取得について

> 
> 
> 小林 (koichik) です.
> 
> Date:    25 Apr 2008 16:02:21 +0900
> From:    [E-MAIL ADDRESS DELETED]
> To:      <[E-MAIL ADDRESS DELETED]>
> Subject: [Seasar-user:13951] Re: [Teeda]Foreach + 動的バリデーションのIndex番号の取得につ
いて
> 
> > 下記の方法で試させて頂きました。
> > xxxItems-1に、yyyMessageを挿入したら表示されませんでした。
> > xxxItems-2に、yyyMessageのほうに挿入したら表示されるようになりました。
> > 
> > 同じ、Items内でしか、Messageの表示は駄目なんですね。
> 
> あう,それは失礼しました.
> コンポーネントの clientId が form:xxxItems-2:0:yyy
> のようになり,メッセージの方は form:xxxItems-1:0:yyy
> で探しにいっちゃうせいですね...
> 
> となると,自前でメッセージを取ってきて
> outputText で表示することになりますか.
> 
> HTML は
> 
> <span id="yyyMsg"></span>
> 
> のように末尾を Message 以外にして,
> ページクラスで
> 
> public String getYyyMsg() {
>   StringBuilder msg = new StringBuilder();
>   FacesContext context = 
>   for (int i = 0; i < xxxItems.size(); ++i) {
>     Iterator<FacesMessage> it = context.getMessages("form:xxxItems:" + i + ":yyy");
>     while (it.hasNext()) {
>       String msg = it.next().getDetail();
>       msg.append(msg); //必要に応じて整形
>     }
>   }
>   return new StringBuilder(msg);
> }
> 
> みたいな.
> # メーラで書いただけなので怪しいかも.
> 
> FacesContext#getMessage() の引数は以下のパラメータ名と
> 同じになります.
> 
> http://teeda.seasar.org/ja/extension/reverse/validation.html#getValidatorメソッドの中でリク
エストパラメータを参照するには
> 
> 
> 
> 
> -- 
> <component name="koichik">
>     <property name="fullName">"Koichi Kobayashi"</property>
>     <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
>     <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
> 


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