Bug #31667
AJAX widgets broken when called inside a loop
100%
Description
As ViewHelpers are supposed to be stateless they were create once per
RenderingContext and reused whenever the RenderingContext fits.
Some ViewHelpers are not stateless, e.g. AJAX widgets.
AJAX widgets push their WidgetContext into an AjaxWidgetContextHolder
before they get rendered.
As soon as AJAX-WidgetViewHelpers were used multiple times within the
same RenderingContext (widgets in ForViewHelpers for example) differet
widgets share the same ViewHelper containing the same WidgetContext.
Because the WidgetContext contains all statefull information about a
widget, only the last rendered widget gets stored in the ContextHolder.
That makes equal AJAX widgets within a for-loop impossible because
each GUI representation interacts with only the last rendered PHP object.
Updated by Sebastian Kurfuerst over 10 years ago
- Status changed from New to Under Review
Updated by Mr. Hudson over 10 years ago
Patch set 3 of change I543fd9771b3c5f9d7b9693980f3b1c17dff28996 has been pushed to the review server.
It is available at http://review.typo3.org/2602
Updated by Sebastian Kurfuerst over 10 years ago
Please use http://review.typo3.org/6594 for testing
Updated by Mr. Hudson over 10 years ago
Patch set 4 of change I543fd9771b3c5f9d7b9693980f3b1c17dff28996 has been pushed to the review server.
It is available at http://review.typo3.org/2602
Updated by Mr. Hudson over 10 years ago
Patch set 5 of change I543fd9771b3c5f9d7b9693980f3b1c17dff28996 has been pushed to the review server.
It is available at http://review.typo3.org/2602
Updated by Stephan Schuler over 10 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset e45079412d945aab812a48933ea5c3ff362e0b08.
Updated by Karsten Dambekalns over 10 years ago
- Category set to Widgets
- Assignee set to Sebastian Kurfuerst
- Target version set to 1.0.1