2021-06-13

Hello,

I have found strange Wicket behavior (8.11): ajax events being executed

twice. The same event leads to 2 invocations to a server. Here is Wicket

debug console logs (AjaxFormComponentUpdatingBehavior set for unfocus):

INFO: focus set on firstName78

INFO: focus removed from firstName78

INFO:

Channel '0' is busy - scheduling the callback to be executed when the

previous request finish.

INFO: Received ajax response (367 characters)

INFO:

<?xml version="1.0" encoding="UTF-8"?><ajax-response><component

id="feedbacks87" ><![CDATA[<div id="feedbacks87">

<div role="alert" class="alert alert-danger">

<div>'firstName' is required.</div>

</div>

</div>]]></component><evaluate><![CDATA[(function(){Wicket.Focus.setFocusOnId('feedbacks87');})();]]></evaluate></ajax-response>

INFO: focus set on feedbacks87 from server side

INFO: Response processed successfully.

INFO: Calling focus on feedbacks87

INFO: Calling postponed function...

INFO: Received ajax response (367 characters)

INFO:

<?xml version="1.0" encoding="UTF-8"?><ajax-response><component

id="feedbacks87" ><![CDATA[<div id="feedbacks87">

<div role="alert" class="alert alert-danger">

<div>'firstName' is required.</div>

</div>

</div>]]></component><evaluate><![CDATA[(function(){Wicket.Focus.setFocusOnId('feedbacks87');})();]]></evaluate></ajax-response>

INFO: returned focused element: [object HTMLDivElement]

INFO: returned focused element: [object HTMLDivElement]

INFO: focus set on feedbacks87 from server side

It looks like "busy" Channel 0 is causing somehow. But, btw, nothing is

happening during this time: so no idea why Channel 0 might be busy.

Do you have any ideas?

Thanks,

Ilia

---------------------------------------------

Orienteer(http://orienteer.org) - open source Business Application Platform

Posted in Users forum

Show more