[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 メーリングリストの案内