You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2019/10/03 10:46:01 UTC

[qpid-broker-j] branch master updated: QPID-8371: [Broker-J][WMC] Communicate error message back to the user for an attempt to invoke operation without sufficient privileges

This is an automated email from the ASF dual-hosted git repository.

orudyy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git


The following commit(s) were added to refs/heads/master by this push:
     new 1e215c1  QPID-8371: [Broker-J][WMC] Communicate error message back to the user for an attempt to invoke operation without sufficient privileges
1e215c1 is described below

commit 1e215c18ca72e7b2488f1530f25e950edf1473f2
Author: Alex Rudyy <or...@apache.org>
AuthorDate: Thu Oct 3 11:42:42 2019 +0100

    QPID-8371: [Broker-J][WMC] Communicate error message back to the user for an attempt to invoke operation without sufficient privileges
---
 .../src/main/java/resources/js/qpid/common/util.js           |  5 +++++
 .../src/main/java/resources/js/qpid/management/Queue.js      |  2 ++
 .../js/qpid/management/preference/PreferenceBrowserWidget.js |  1 +
 .../java/resources/js/qpid/management/query/QueryGrid.js     |  7 +++++--
 .../java/resources/js/qpid/management/query/StoreUpdater.js  | 12 ++++++++----
 5 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js
index 10c1ac2..db89e74 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/common/util.js
@@ -380,6 +380,11 @@ define(["dojo/_base/xhr",
                     else if (status == 403)
                     {
                         message = "Access Forbidden";
+                        var m = util.getErrorMessage(error, "");
+                        if (m)
+                        {
+                            message += ": " + m;
+                        }
                     }
                     else
                     {
diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
index d1c6c93..bff2a8c 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/Queue.js
@@ -452,6 +452,8 @@ define(["dojo/_base/declare",
                 management: this.management
             });
 
+            this._messagesStore.on("unexpected", util.xhrErrorHandler);
+
             var userPreferences = this.management.userPreferences;
             var MessagesGrid = declare([Grid,
                                         Keyboard,
diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preference/PreferenceBrowserWidget.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preference/PreferenceBrowserWidget.js
index e3565f1..fc78956 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preference/PreferenceBrowserWidget.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/preference/PreferenceBrowserWidget.js
@@ -270,6 +270,7 @@ define(["dojo/_base/declare",
                         preferenceRoot: this.preferenceRoot,
                         preferenceType: this.preferenceType
                     });
+                    preferencesStore.on("unexpected", util.xhrErrorHandler);
                     return preferencesStore;
                 },
                 _openPreference: function (event)
diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/QueryGrid.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/QueryGrid.js
index f195b91..b724171 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/QueryGrid.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/QueryGrid.js
@@ -33,7 +33,8 @@ define(["dojo/_base/declare",
         "dgrid/extensions/DijitRegistry",
         "qpid/management/query/QueryStore",
         "qpid/management/query/StoreUpdater",
-        "dojo/keys"],
+        "dojo/keys",
+        "qpid/common/util"],
     function (declare,
               lang,
               domConstruct,
@@ -49,7 +50,8 @@ define(["dojo/_base/declare",
               DijitRegistry,
               QueryStore,
               StoreUpdater,
-              keys)
+              keys,
+              util)
     {
 
         return declare("qpid.management.query.QueryGrid",
@@ -74,6 +76,7 @@ define(["dojo/_base/declare",
                             });
                         this._store = new Store(args);
                         this._store.on("updateCompleted", lang.hitch(this, this._onFetchCompleted));
+                        this._store.on("unexpected", util.xhrErrorHandler);
                     }
                     else
                     {
diff --git a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
index 1a02925..c313dcb 100644
--- a/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
+++ b/broker-plugins/management-http/src/main/java/resources/js/qpid/management/query/StoreUpdater.js
@@ -95,9 +95,13 @@ define(["dojo/_base/declare",
                     var handler = lang.hitch(this, function (data)
                     {
                         this._processResults(data, methodName, args);
+                        if (!data.hasOwnProperty("results"))
+                        {
+                            this.emit("unexpected", data);
+                        }
                     });
                     all({results: queryResults, totalLength: queryResults.totalLength})
-                        .then(handler);
+                        .always(handler);
                 },
                 _processResults: function (data, methodName, args)
                 {
@@ -117,9 +121,9 @@ define(["dojo/_base/declare",
                     }
                     else
                     {
-                        var results = data.results.slice(0);
-                        this._currentResults = results;
-                        this._currentResultsIdToIndexMap = createIdToIndexMap(results, this.idProperty);
+                        var hasResults = data.hasOwnProperty("results");
+                        this._currentResults = hasResults ? data.results.slice(0) : [];
+                        this._currentResultsIdToIndexMap = hasResults ? createIdToIndexMap(this._currentResults, this.idProperty) : {};
                         this["_" + methodName + "CapturedArguments"] = capturedArguments;
                     }
                 },


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org