[Seasar-user:1856] S2JSFの2重のforEachについて

ANC04864@NIFTY.NE.JP ANC04864
2005年 4月 25日 (月) 11:36:59 JST


ごうぎと申します。

ForEachタグについて確認させて頂きたいことがあります。
もしご存知の方いらっしゃいましたらコメント頂けると助かります。

次のようにforEachを使って二重のループを組みました。

<span  m:inject="s:forEach" m:items="#{hoge.list}"	m:var="item" >
   <span  m:inject="s:forEach" m:items="#{item.list}"	m:var="item2" >
      
   </span>
</span>

まず、一番内側のループのなかで、
    <span m:value="#{item2.val}" m:converter="#{hogeConverter}"/>
といったタグを置き item2.val の内容を表示させるだけの場合は問題なくこのページ
を更新することができました。(forEachが使えるのは本当に便利です)

次に
     <input type="text" m:value="#{item2.val}" m:converter="#{hogeConverter}">
のようにinputを置いてみました。するとこの場合、更新時に、このメールの末尾に掲載
したようなエラーが出ました。

ちなみに、hoge.listによる外側のループにinputを置いた場合は、同じ二重ループではあ
りますが、問題なく更新できました。
したがって、「input系のタグは一重のforEachループ内におく必要がある」ということか
と想像するのですが、この認識が正しいか確認させて頂こうと思った次第です。

以上、お手数をお掛けしますが宜しくお願いいたします。

------8<------8<------8<------8<------8<------8<------8<------8<------8<------

環境は
・S2JSF1.0.0
・Tomcat 5系(WindowsXP と Linux)

    ***



2005-04-25 03:39:45,670 [http-8080-Processor23] ERROR org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/course_navi] - Exception in FacesServlet
java.lang.NullPointerException
	at org.seasar.jsf.component.ForEach.restoreDescendantComponentStates(ForEach.java:228)
	at org.seasar.jsf.component.ForEach.restoreDescendantComponentStates(ForEach.java:230)
	at org.seasar.jsf.component.ForEach.restoreDescendantComponentStates(ForEach.java:230)
	at org.seasar.jsf.component.ForEach.restoreDescendantComponentStates(ForEach.java:230)
	at org.seasar.jsf.component.ForEach.processDecodes(ForEach.java:137)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIForm.processDecodes(UIForm.java:51)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:398)
	at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:151)
	at org.seasar.jsf.component.S2UIViewRoot.processDecodes(S2UIViewRoot.java:42)
--
 Shigeru Gougi  < [E-MAIL ADDRESS DELETED] >
 http://www.wingnest.com/gougi/




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