[ https://issues.apache.org/jira/browse/TAPESTRY-2436?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Howard M. Lewis Ship closed TAPESTRY-2436. ------------------------------------------ Resolution: Fixed Fix Version/s: 5.0.13 This appears fixed; I did a bit of rework on this code earlier in the week. > New FormInjectorDemo using AjaxFormLoop fails if a row is added and then > removed without a form submission in between > --------------------------------------------------------------------------------------------------------------------- > > Key: TAPESTRY-2436 > URL: https://issues.apache.org/jira/browse/TAPESTRY-2436 > Project: Tapestry > Issue Type: Bug > Components: Core Components > Affects Versions: 5.0.12 > Reporter: Andy Blower > Assignee: Howard M. Lewis Ship > Fix For: 5.0.13 > > > I've been trying out the new FormInjectorDemo > (org.apache.tapestry5.integration.app1.pages) which uses AjaxFormLoop trying > to get a handle on how to use this component. Unfortunately I found a bug > serious enough for me to put using this component on hold. > To reproduce, follow these steps: > 1) Click the link to add a row. > 2) When the new row appears, click the remove link. > 3) The row isn't removed and if you click the sum button, it breaks. > The start state isn't important - basically removing an added row before form > submission seems to fail and causes problems when the form is submitted. > An unexpected application exception has occurred. > * org.apache.tapestry5.runtime.ComponentEventException > Unable to convert serialized id '1212682948794' back into an object. > context > eventType > action > location > classpath:com/proquest/core/pages/FormInjectorDemo.tml, line 10, > column 13 > 5 </head> > 6 <body> > 7 > 8 <h1>FormInjector Demo (now including AjaxFormLoop)</h1> > 9 > 10 <t:form> > 11 > 12 <ul> > 13 <li t:id="loop" t:type="AjaxFormLoop" source="doubleItems" > value="item" encoder="encoder"> > 14 <t:submitnotifier> > 15 <t:textfield t:id="value" value="item.value"/> > * org.apache.tapestry5.ioc.internal.util.TapestryException > Unable to convert serialized id '1212682948794' back into an object. > location > classpath:com/proquest/core/pages/FormInjectorDemo.tml, line 13, > column 103 > 8 <h1>FormInjector Demo (now including AjaxFormLoop)</h1> > 9 > 10 <t:form> > 11 > 12 <ul> > 13 <li t:id="loop" t:type="AjaxFormLoop" source="doubleItems" > value="item" encoder="encoder"> > 14 <t:submitnotifier> > 15 <t:textfield t:id="value" value="item.value"/> > 16 <t:removerowlink>remove</t:removerowlink> > 17 </t:submitnotifier> > 18 <t:parameter name="addRow"> > * java.lang.RuntimeException > Unable to convert serialized id '1212682948794' back into an object. > Stack trace > o > org.apache.tapestry5.corelib.components.AjaxFormLoop._$advised$syncValue(AjaxFormLoop.java:266) > o > org.apache.tapestry5.corelib.components.AjaxFormLoop$syncValue$invocation_11a5989508e.invokeAdvisedMethod(AjaxFormLoop$syncValue$invocation_11a5989508e.java) > o > org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:71) > o > org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37) > o > org.apache.tapestry5.internal.transform.LogWorker$1.advise(LogWorker.java:54) > o > org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:80) > o > org.apache.tapestry5.corelib.components.AjaxFormLoop.syncValue(AjaxFormLoop.java) > o > org.apache.tapestry5.corelib.components.AjaxFormLoop.access$700(AjaxFormLoop.java:38) > o > org.apache.tapestry5.corelib.components.AjaxFormLoop$SyncValue.execute(AjaxFormLoop.java:184) > o > org.apache.tapestry5.corelib.components.AjaxFormLoop$SyncValue.execute(AjaxFormLoop.java:173) > o > org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:396) > o > org.apache.tapestry5.corelib.components.Form._$advised$onAction(Form.java:315) > o > org.apache.tapestry5.corelib.components.Form$onAction$invocation_11a5989508b.invokeAdvisedMethod(Form$onAction$invocation_11a5989508b.java) > o > org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:71) > o > org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37) > o > org.apache.tapestry5.internal.transform.LogWorker$1.advise(LogWorker.java:54) > o > org.apache.tapestry5.internal.services.AbstractComponentMethodInvocation.proceed(AbstractComponentMethodInvocation.java:80) > o > org.apache.tapestry5.corelib.components.Form.onAction(Form.java) > o > org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java) > o > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:872) > o > org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1025) > o > org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:67) > o > org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42) > o > org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42) > o > org.apache.tapestry5.services.TapestryModule$37.handle(TapestryModule.java:1987) > o > org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:135) > o > org.apache.tapestry5.services.TapestryModule$12.service(TapestryModule.java:938) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]