WICKET-4668 Ajax responses for QUEUE and DROP type channels are not guaranteed to be processed in the order of the requests
Always run the global callback handlers after the call specific ones. Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/9774c87f Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/9774c87f Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/9774c87f Branch: refs/heads/master Commit: 9774c87f8810f8b66a1a32e1c6d461b1ed457f9b Parents: bc9ff1f Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Tue Jul 24 14:13:17 2012 +0300 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Tue Jul 24 14:13:17 2012 +0300 ---------------------------------------------------------------------- .../wicket/ajax/res/js/wicket-ajax-jquery.js | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/9774c87f/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js index 7b47440..2bfbbda 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/res/js/wicket-ajax-jquery.js @@ -467,8 +467,8 @@ headers["Wicket-FocusedElementId"] = Wicket.Focus.lastFocusId; } - Wicket.Event.publish('/ajax/call/before', attrs); self._executeHandlers(attrs.bh, attrs); + Wicket.Event.publish('/ajax/call/before', attrs); if (attrs.mp) { // multipart form. jQuery doesn't help here ... // TODO Wicket.next - should we execute all handlers ?! @@ -552,8 +552,8 @@ } } - Wicket.Event.publish('/ajax/call/beforeSend', attrs, jqXHR, settings); self._executeHandlers(attrs.bsh, attrs, jqXHR, settings); + Wicket.Event.publish('/ajax/call/beforeSend', attrs, jqXHR, settings); if (attrs.i) { // show the indicator @@ -567,7 +567,6 @@ cache: false, headers: headers, success: function(data, textStatus, jqXHR) { - if (attrs.wr) { self.processAjaxResponse(data, textStatus, jqXHR, context); } else { @@ -589,6 +588,7 @@ Wicket.Event.publish('/ajax/call/complete', attrs, jqXHR, textStatus); self.done(); + }, self)); var executer = new FunctionsExecuter(context.steps); http://git-wip-us.apache.org/repos/asf/wicket/blob/9774c87f/wicket-core/src/test/js/data/ajax/emptyAjaxResponse.xml ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/js/data/ajax/emptyAjaxResponse.xml b/wicket-core/src/test/js/data/ajax/emptyAjaxResponse.xml new file mode 100644 index 0000000..e69de29
