[ 
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]

Reply via email to