[Seasar-user:3051] Re: [S2JSF] 要望:passthrough

yone@abby.co.jp yone
2005年 12月 21日 (水) 11:18:36 JST


米林です

> ひがです。
> >
> > モースト渡辺です。
> > passthroughでconverterが効かないのは仕様となっていますが、converter属性
> > が効かないのは辛いなあ。以下のような場面が発生しました。
> > 1.表形式で行数が未定のデータがあります。
> > 2.上記のデータをjavascriptで扱いたいため、input-hiddenで出力しました。
> > 3.そのデータをjacascriptのarrayで受取りたいため、同一のname属性をつけ
> > ます。
> > 4.このデータを同一のconverterを経由して、表示したい。
> >
> > どうも出力したhtmlを見るとpassthroughなしでは、ループごとにnameが違って
> > きますし、ありではconverterが有効になりません。なかなかジレンマです。
> >
> > 場当たり的な対処は出来ますが、やはり、converter属性を有効にするのは難し
> > いのかなあ、とも思っていますが、どうでしょう。
> >
> passthroughは、JSFのコンポーネントではなく、素のHTMLにマッピングすると
> いう意味なので、converter属性は意味を持たないことになります。
>
> それ用のコンポーネントを作るというのが良いような気もします。
> ニーズを完全に把握していないので、ボケたことを言ってるかもしれません。
> もうちょっと具体例をあげていただけるでしょうか。
おそらく、name属性だけ passthrough したいという事だと思います。
#ちょっと表現がおかしいかもしれませんが

別の言い方をしますと、javascriptでの処理を考慮して
id もしくは name 属性だけそのまま出力したいという事じゃないでしょうか?
-----------------------------------------------------------------------------
【現状の動き】exampleのconverter.htmlを例にすると
 <input type="hidden" id="hoge" m:value="#{converterDto.aaa}"
  m:converter="#{outputDateTimeConverter}"/>
   ↓出力されるとidが書き換わる
<input type="hidden" id="_id116:hoge" name="_id116:hoge" value="2005/12/21"/>
-----------------------------------------------------------------------------

idだけhogeとして出力したいので、新たに m:idpass="true" を用意したとして
-----------------------------------------------------------------------------
 <input type="hidden" id="hoge" m:value="#{converterDto.aaa}"
  m:converter="#{outputDateTimeConverter}"
  m:idpass="true"/>
   ↓こう出力されたい(idとnameは指定したまま出力)
<input type="hidden" id="hoge" name="hoge" value="2005/12/21"/>
-----------------------------------------------------------------------------

私もボケたことを言ってるかもですが。。



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