[
https://issues.apache.org/jira/browse/ISIS-1101?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood resolved ISIS-1101.
-------------------------------
Resolution: Fixed
> Avoid unexpected concurrency exceptions if using a custom page.
> ---------------------------------------------------------------
>
> Key: ISIS-1101
> URL: https://issues.apache.org/jira/browse/ISIS-1101
> Project: Isis
> Issue Type: Improvement
> Components: Core: Viewer: Wicket
> Affects Versions: core-1.8.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: 1.9.0
>
>
> The Wicket viewer uses the redirect-after-post strategy, meaning that after
> an action is invoked, an EntityModel (wrapping the oid of the entity) is
> serialized as the content of the next page to show, but the browser is then
> returned as 30x response. The browser then reloads the page afresh.
> However, the entity model will (normally) encode the oid of the entity before
> the xactn of the first request has completed; if that entity is modified (as
> is normally the case) then that oid is stale.
> To counteract this the EntityPage page uses the onBeforeRender hook to load
> the objectAdapter from the EntityModel without concurrency checking.
> So far so good.
> However, the Wicket viewer also supports custom home pages. If these are
> rendered for the resultant entity then this hook is not called, resulting in
> a concurrency check exception.
> This ticket is therefore for the component factories (that render the object
> after the redirect) to load the entity without concurrent checking; this will
> allow them to work even if embedded in custom pages.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)