[Seasar-user:10712] Re: [Teeda] Gridを使った画面での行削除について

Shinpei Ohtani [E-MAIL ADDRESS DELETED]
2007年 9月 25日 (火) 11:02:54 JST


大谷です.

> Gridを使用して行の削除は可能でしょうか?

実際のTeeda側でもっているコンポーネントツリーの構造と
ずれてしまうため、本当に削除してしまうのは出来ないと思います.
それよりは削除したように見せる論理削除をお奨めします.

teeda-html-exampleにあるgridEdit.htmlなどが
そのような例だったはずなので、まずは見てみるとよいのではないでしょうか.

07/09/25 に 松崎 学<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 松崎です。いつもお世話になっております。
>
> Gridを使った画面で、配列の削除(行の削除処理)を行った場合に
> 次回のサブミット時に例外が発生します。
> (GridにはItemsSaveタグも設定しています。)
>
> Gridを使用して行の削除は可能でしょうか?
>
>
> PageクラスとHTMLは以下のような感じです。
>
> ■Pageクラスのフィールド
> FooDto[] fooItems;
>
> ■HTMLのタグ
> <input type="hidden" id="fooItemsSave" />
>
> ■例外が発生する箇所
> org.seasar.teeda.extension.component.TForEach#processUpdates
> ※rowSizeとitemsの要素数が異なる為例外が発生しているようです。
>
> ■スタックトレース
> DEBUG 2007-09-21 19:19:30,312 Thread=[http-8080-Processor23] Message=[14]
> java.lang.ArrayIndexOutOfBoundsException: 14
>         at org.seasar.teeda.extension.component.TForEach.processUpdates(TForEach.java:400)
>         at javax.faces.component.ComponentUtil_.processAppropriatePhaseAction(ComponentUtil_.java:51)
>         at javax.faces.component.UIForm.processAppropriateAction(UIForm.java:85)
>         at javax.faces.component.UIForm.processUpdates(UIForm.java:68)
>         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:446)
>         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:446)
>         at javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:110)
>         at org.seasar.teeda.core.lifecycle.impl.UpdateModelValuesPhase.executePhase(UpdateModelValuesPhase.java:30)
>         at org.seasar.teeda.core.lifecycle.AbstractPhase.execute(AbstractPhase.java:57)
>         at org.seasar.teeda.core.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:92)
>         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:94)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:122)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.seasar.teeda.core.filter.RequestDumpFilter.doFilter(RequestDumpFilter.java:125)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.seasar.framework.container.hotdeploy.HotdeployFilter.doFilter(HotdeployFilter.java:63)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.seasar.framework.container.filter.S2ContainerFilter.doFilter(S2ContainerFilter.java:64)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.seasar.extension.filter.EncodingFilter.doFilter(EncodingFilter.java:69)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.seasar.extension.httpsession.SessionFilter.doFilter(SessionFilter.java:60)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
>         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
>         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
>         at java.lang.Thread.run(Thread.java:595)
>
>
> 現在、以下のバージョンを使用しています。
> S2Container 2.4.17
> Teeda 1.0.10
> S2Dao 1.0.44
>
> 以上、よろしくお願いいたします。
>
> --
> 松崎 学 <[E-MAIL ADDRESS DELETED]>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>


-- 
=============================
Shinpei Ohtani
[E-MAIL ADDRESS DELETED]
=============================



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