Hello Sven,

Any update on this?
Many thanks

On Mon, May 16, 2022 at 11:40 AM Sven Meier <s...@meiers.net> wrote:

> Hi Wayne,
>
> not, because InSessionPageStore#canBeAsynchronous returns false, thereby
> preventing asynchronous adds.
>
> Regards
> Sven
>
>
> On 16.05.22 09:37, Wayne W wrote:
> > Ah that's great Sven.
> >
> > Just a question - is it necessary for me to call
> > getStoreSettings().setAsynchronous(false); when wanting to support http
> > session setup?
> >
> > I saw a post about this quite some time ago but I'm not sure.
> >
> > Thanks for clarifying
> >
> >
> >
> > On Sun, May 15, 2022 at 8:54 PM Sven Meier <s...@meiers.net> wrote:
> >
> >> Hi Wayne,
> >>
> >> I've create an issue for this bug:
> >>
> >> https://issues.apache.org/jira/browse/WICKET-6981
> >>
> >> I think I have a fix ready, but have to give it some more tests.
> >>
> >> Thanks for reporting the issue.
> >>
> >> Sven
> >>
> >>
> >> On 10.05.22 23:25, Sven Meier wrote:
> >>> Hi Wayne,
> >>>
> >>>> Is this a bug?
> >>> could be, do we have a Jira issue already?
> >>>
> >>> I think there might be a call to Session#setMetaData() missing. Before
> >>> Wicket 9.x it seemed to have been called additionally when a page is
> >>> stored in the session.
> >>>
> >>> I'll take a deeper look into this tomorrow.
> >>>
> >>> Best regards
> >>> Sven
> >>>
> >>>
> >>> On 10.05.22 18:47, Wayne W wrote:
> >>>> Hi,
> >>>>
> >>>> I am *still* trying to troubleshoot why migrating to 9.4 we have
> >>>> found that
> >>>> our app no longer supports session failover correctly. We use
> >>>> Redission to
> >>>> store the tomcat session in Redis.
> >>>>
> >>>> After a lot of debugging it appears that for
> >>>> AjaxFormComponentUpdatingBehavior.onEvent() calls,
> >>>> HttpSessionStore.flushSession() is never called after. And changes to
> >>>> the
> >>>> model are not persisted in the HTTP Session and into Redis backed
> store.
> >>>> The reason is setAttribute is never called on the session and
> >>>> therefore the
> >>>> updated session with good model values is never persisted. And when
> the
> >>>> next call arrives, the page is pulled back out of Redis/Http session
> >>>> without the changes.
> >>>>
> >>>> I had to do the following to get the wicket session to be stored in
> the
> >>>> session within our Application:
> >>>>
> >>>> ISerializer serializer = new JavaSerializer(getApplicationKey());
> >>>> getFrameworkSettings().setSerializer(serializer);
> >>>> getStoreSettings().setAsynchronous(false);
> >>>> setPageManagerProvider(new DefaultPageManagerProvider(this) {
> >>>>               protected IPageStore newCachingStore(IPageStore
> pageStore)
> >>>>           {
> >>>>           return new CachingPageStore(pageStore, new
> >>>> InSessionPageStore( 2,
> >>>> serializer));
> >>>>           }
> >>>>           });
> >>>>
> >>>> The objects are updated in the session page object instance correctly
> >>>> with
> >>>> AjaxFormComponentUpdatingBehavior , however this issue is they are
> never
> >>>> saved/persisted as setAttribute is not called. So the next request
> comes
> >>>> and a new page object instance is unserialized from the store without
> >>>> the
> >>>> changes.
> >>>>
> >>>> Is this a bug?
> >>>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> >>> For additional commands, e-mail: users-h...@wicket.apache.org
> >>>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> >> For additional commands, e-mail: users-h...@wicket.apache.org
> >>
> >>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

Reply via email to