actionLink twice in a page leads to an exception
------------------------------------------------
Key: SHALE-234
URL: http://issues.apache.org/struts/browse/SHALE-234
Project: Shale
Issue Type: Bug
Components: Clay
Affects Versions: Nightly
Environment: windows xp, Tomcat 5.5.17, myfaces 1.1.3
Reporter: Ian Priest
if an actionLink with the same action is used in a page twice an
IndexOutOfBoundsException is thrown...
2006-07-26 15:18:24,932 DEBUG
[org.apache.shale.clay.component.chain.CreateComponentCommand] Child component
id: _idsc66, jsfid: verbatim child#: 30 created.
2006-07-26 15:18:24,932 DEBUG
[org.apache.shale.clay.component.chain.CreateComponentCommand] Child component
id: helprequest, jsfid: widgetsActionLink child#: 31 created.
...<messages clipped>...
2006-07-26 15:18:24,952 DEBUG
[org.apache.shale.clay.component.chain.CreateComponentCommand] Child component
helprequest, jsfid: widgetsActionLink child#: 41 exists.
2006-07-26 15:18:24,952 DEBUG
[org.apache.shale.clay.component.chain.CreateComponentCommand] Child component
id: _idsc79, jsfid: outputText child#: 0 created.
2006-07-26 15:18:24,952 ERROR [org.apache.shale.clay.component.Clay]
java.lang.IndexOutOfBoundsException: Index: 42, Size: 41
2006-07-26 15:18:24,952 DEBUG [org.apache.shale.view.faces.ViewPhaseListener]
afterPhase([EMAIL PROTECTED],RENDER_RESPONSE(6))
2006-07-26 15:18:24,952 DEBUG [org.apache.shale.view.faces.LifecycleListener]
ServletRequestAttributeRemoved(org.apache.shale.view.VIEWS_INITIALIZED,[EMAIL
PROTECTED])
2006-07-26 15:18:24,952 DEBUG [org.apache.shale.view.faces.LifecycleListener]
ServletRequestAttributeRemoved(org.apache.shale.view.PHASE_ID,RENDER_RESPONSE(6))
2006-07-26 15:18:24,962 ERROR
[org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/scn].[faces]]
Servlet.service() for servlet faces threw exception
java.lang.RuntimeException: java.lang.IndexOutOfBoundsException: Index: 42,
Size: 41
at org.apache.shale.clay.component.Clay.encodeBegin(Clay.java:390)
at
org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:412)
at
org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:415)
at
org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:415)
at org.apache.shale.clay.component.Clay.encodeChildren(Clay.java:444)
at
org.apache.shale.clay.component.Clay.recursiveRenderChildren(Clay.java:417)
at org.apache.shale.clay.component.Clay.encodeChildren(Clay.java:444)
at
org.apache.shale.clay.faces.ClayViewHandler.recursiveRender(ClayViewHandler.java:468)
at
org.apache.shale.clay.faces.ClayViewHandler.renderView(ClayViewHandler.java:394)
at
org.apache.shale.view.faces.ViewViewHandler.renderView(ViewViewHandler.java:150)
at
org.apache.shale.tiles.TilesViewHandler.renderView(TilesViewHandler.java:175)
at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.shale.faces.ShaleApplicationFilter.doFilter(ShaleApplicationFilter.java:271)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:292)
at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
at
org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:79)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:143)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:138)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:220)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:303)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:173)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:120)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.scn.web.filter.CharsetFilter.doFilter(CharsetFilter.java:45)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.IndexOutOfBoundsException: Index: 42, Size: 41
at java.util.ArrayList.add(ArrayList.java:369)
at
javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList.java:70)
at
org.apache.shale.clay.component.chain.CreateComponentCommand.execute(CreateComponentCommand.java:209)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:166)
at
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:175)
at
org.apache.shale.clay.utils.FalseLookupCommand.execute(FalseLookupCommand.java:38)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:166)
at
org.apache.shale.clay.component.chain.AssignChildrenCommand.execute(AssignChildrenCommand.java:90)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:166)
at
org.apache.shale.clay.component.chain.AssignChildrenCommand.execute(AssignChildrenCommand.java:90)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:166)
at org.apache.shale.clay.component.Clay.encodeBegin(Clay.java:387)
... 46 more
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/struts/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira