[
https://issues.apache.org/jira/browse/WICKET-3931?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Martin Grigorov updated WICKET-3931:
------------------------------------
Attachment: WICKET-3931.patch
This is the best I was able to do so far.
Now InlineEnclosure has a logic to find its markup for Ajax requests.
The only problem is that now
org.apache.wicket.markup.html.internal.AjaxEnclosureTest.testNestedInlineEnclosuresShouldToggleNormally()
fails because all InlineEnclosures in a page have the same component id
(InlineEnclosure-) and finding the markup is impossible.
> Component markup caching inconsistencies
> ----------------------------------------
>
> Key: WICKET-3931
> URL: https://issues.apache.org/jira/browse/WICKET-3931
> Project: Wicket
> Issue Type: Bug
> Components: wicket-core
> Affects Versions: 1.5-RC5.1
> Reporter: Martin Grigorov
> Assignee: Juergen Donnerstag
> Attachments: WICKET-3931.patch, variation.tgz
>
>
> In WICKET-3891 we found that Component#markup field is not being reset
> between requests. The problem is that this field is transient and it is
> null-ified only when the page is read from the second level page cache (see
> https://cwiki.apache.org/confluence/x/qIaoAQ). If the page instance is read
> from first level cache (http session) then its non-serialized version is used
> and the markup field value is still non-null.
> In WICKET-3891 this looked like a minor issue with the markup caching in
> development mode but actually this problem is valid even in production mode.
> See the attached application. When the panel's variation is changed every
> MarkupContainer inside still uses its old markup.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira