You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Emond Papegaaij (JIRA)" <ji...@apache.org> on 2014/06/16 12:37:02 UTC

[jira] [Closed] (WICKET-4657) Avoid losing events between instantiation and rendering

     [ https://issues.apache.org/jira/browse/WICKET-4657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emond Papegaaij closed WICKET-4657.
-----------------------------------

    Resolution: Won't Fix

Looking at this again, I don't think it is possible to solve this in an elegant way. As Daniel says, pages can only receive events once the callback is done (and the ws-connection is open). Caching events sent between instantiation and the callback would require all events to be stored in the pages until the callback is received. But what if the callback never comes? How long do you store these events?

If you index your events, you can store the current index when the page is instantiated and update the page with any intermediate events once the callback is received (you can use ResourceRegistrationListener for that).

> Avoid losing events between instantiation and rendering
> -------------------------------------------------------
>
>                 Key: WICKET-4657
>                 URL: https://issues.apache.org/jira/browse/WICKET-4657
>             Project: Wicket
>          Issue Type: Wish
>          Components: wicket-atmosphere
>    Affects Versions: 6.0.0-beta3
>            Reporter: Pouyan Zaxar
>            Assignee: Emond Papegaaij
>         Attachments: PageTasksScheduler.zip
>
>   Original Estimate: 4h
>  Remaining Estimate: 4h
>
> Currently the atmosphere module subscribes components to the EventBus just before they are rendered. Naturally events sent on the EventBus before component rendering are lost. You cannot even save lost events using a BoradcasterCache (https://github.com/Atmosphere/atmosphere/wiki/Understanding-BroadcasterCache).
> It could be advantageous if components are registered on instantiation (just before initialization) and it can be set if the component wants to receive cached events (e.g. @Subscribe(cache=true)) which have been generated between registering and rendering of the component.



--
This message was sent by Atlassian JIRA
(v6.2#6252)