[Seasar-user:6745] Re: [S2JSF] 1.0..xでtabindexにEL式を記述するとエラーになる
onishi
[E-MAIL ADDRESS DELETED]
2007年 3月 19日 (月) 14:06:58 JST
おおにしです。
> 可能であれば、ForEach対象のDTOに計算結果を返すプロパティを
> 用意するのはいかがでしょうか?
List内にあるDTOに値を設定した値をtabindexで使用しようとしましたが、
#{e.index}とするとエラーになってしまいます。(JSFの仕様?)
その他に、ForEachの変数(varIndex)でtabindexを設定してみましたが、
初期値が0のため最初の項目でタブが思った動作をしませんでした。
上記方法が不可能となると、JavaScriptでガリガリ書くという方法しかないように感じます。
(JavaScriptはあまり使いたくないのですが…)
今回開発しているものは、列ごとに入力をしていくもので、
タブキーが押されるとカーソルを下に移動させてほしいと要望がきています。
このシステムは4月からのオープンで、
対応は4月以降でもいいと言われていますが、
できれば早めに解決をしておきたいと思っています。
可能であれば、S2JSF側で対応していただきたいです。
コミッタ間の検討結果を待ちたいと思います。
以上、よろしくお願いします。
>
> 米林です。
>
> From: "onishi" <[E-MAIL ADDRESS DELETED]>
> Sent: Saturday, March 17, 2007 10:09 AM
>
> > おおにしです。
> >
> > 米林さん、早速の対応ありがとうございました。
> >
> > 動作確認をしてみました。
> > 結果は以下の通りです。
> >
> > 定数(tabindex="1"): OK
> > 変数のみ(tabindex="#{i}"): OK
> > 計算式(tabindex="#{i*10+1}"): NG
> >
> > 計算式を使用した場合エラーになります。
> > Error 500: Could not get property tabindex of component
> > inputForm:_id85_0:kbn
> >
> > 対応よろしくお願いいたします。
>
> JSFの仕様でtabindexはString型として扱われます。
>
> Caused by: java.lang.ClassCastException: java.lang.Long
> at
> javax.faces.component.html.HtmlInputText.getTabindex(HtmlInputText.java:371)
>
> ですのでtabindexのEL式に計算式を入れた場合にはMyFaces側で
> 上記例外が発生します。
> S2JSF側で対応するかどうかコミッタ間で話し合ってみますが
> 可能であれば、ForEach対象のDTOに計算結果を返すプロパティを
> 用意するのはいかがでしょうか?
> ---
> 米林 正明
> [E-MAIL ADDRESS DELETED]
Seasar-user メーリングリストの案内