create a custom request cycle and put this stuff in requestcycle#onbeginrequest

-igor

On Sun, Aug 10, 2008 at 11:15 PM, Benny Weingarten
<[EMAIL PROTECTED]> wrote:
>
> Hello.
>
> I'm writing a wicket application for facebook, but I think my problem may be
> common to many wicket applications.
>
> In my case, I'm using the wicket-facebook authentication strategy that is
> described in a different thread here on nabble. That works great - when a
> page is rendered, the AuthenticationStrategy makes sure that I have a valid
> FacebookRestClient object in my session.
> In my application I need to do some other "init" stuff in a service class,
> and I do that in the onUnauthorizedInstantiation method. This "init"
> information is stored in a ThreadLocal variable in my BACKEND-Service. This
> is an important point, because wicket uses many different threads for user
> requests, so I need to make sure that in the beginning of each render
> request, the init information is stored on THAT REQUEST's thread.
>
> ALL my components in all my pages and panels try to fetch information from
> the BACKEND-Service. If the BACKEND-Service hasn't been initialized with the
> "init" information on the ThreadLocal variable on the same thread that the
> render request is issued on, an exception would be thrown and the page would
> fail to render.
>
> This is all great when a user is browsing through PAGES. However, in one
> page I have a tabbedpanel. When first the user loads the page, the
> authorization strategy kicks in, and the init actions are performed, the
> page renders correctly.
>
> *** and here is my problem:
> when the user clicks on the second tab in the page, the request can be made
> from a different thread (wicket controls that), but the "init" stuff is not
> performed because it is not a new page that needs to be rendered. This
> problem also arises when I use ajax components.
>
> I thought of putting the init stuff in the "onBeforeRender()" method of each
> separate component that requires the "init" information.
>
> Would this be the preferred way of doing "init" actions for components?
>
> Thanks,
> Benny.
> --
> View this message in context: 
> http://www.nabble.com/Pre-render-action-common-to-all-pages-tp18920691p18920691.html
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to