Hi,

Is Wildfly configured to replicate the http sessions across the nodes ?
It seems you save a page instance on node 1 but then it is not available at
node 2. I.e. Wildfly didn't replicate the http session from 1 to 2 and
Wicket knows nothing about page with id 7 on node 2.

On Fri, Sep 2, 2022 at 4:05 PM Shengche Hsiao <shengchehs...@gmail.com>
wrote:

> I found some log on failover node
>
>
> 2022-09-02 20:57:41,270 DEBUG
> [org.apache.wicket.pageStore.memory.HttpSessionDataStore] (default
> task-352) Stored '32808' bytes for page '7' in session
> '1Nlahj618TQ9MgwbQLPt6Agk-_F0zQTu1Qs-Vgp1'
>
> 2022-09-02 20:57:41,317 DEBUG
> [org.apache.wicket.pageStore.memory.HttpSessionDataStore] (default
> task-352) Loaded '-1' bytes for page with id '7' in session
> '1Nlahj618TQ9MgwbQLPt6Agk-_F0zQTu1Qs-Vgp1'
>
>
> I used HttpSessionDataStore to store pages, when node 1 closed
> intentionally , I click none-ajax link, the node 2 take over the closed
> node 1’s session, and showed correct page content. Then, I click the ajax
> button, as the log showed, page ‘7’ stored with ‘32808’ bytes, but loaded
> with ‘-1’ bytes for same pageid.
>
>
>
> From: ShengChe Hsiao <front...@gmail.com>
> Date: Friday, September 2, 2022 at 10:22
> To: Wicket User Mailinglist <users@wicket.apache.org>
> Subject: AjaxCall while failover return same page content
> Dear all
>
> I faced a strange situation, I built a wicket application which deployed
> to Wildfly Cluster.
> When I using Apache httpd as load balancer, everything works as expected.
> But when I move application to GCP, and use their load balancer which has
> gclb and gclib cookie to identity transfer to wildfly node with TTL of 300
> seconds.
> After GCP LB ttl timeout (wicket session still active), gcp lb route to
> another wildfly node, and I clicked on ajaxbutton. I saw response code 200
> on browser console and response payload is <?xml versio=”1.0”
> encoding=”UTF-8”><ajax-response></ajax-response>.
>
> How do I fix it ?
>

Reply via email to