diff --git a/solr/webapp/web/js/angular/app.js b/solr/webapp/web/js/angular/app.js index d8658961ca3..d4bf3755133 100644 --- a/solr/webapp/web/js/angular/app.js +++ b/solr/webapp/web/js/angular/app.js @@ -280,6 +280,9 @@ solrAdminApp.config([ }; var failed = function(rejection) { + if (rejection.config.params.doNotIntercept) { + return rejection; + } activeRequests--; if (activeRequests == 0) { $rootScope.$broadcast('loadingStatusInactive'); diff --git a/solr/webapp/web/js/angular/controllers/dataimport.js b/solr/webapp/web/js/angular/controllers/dataimport.js index 995929da6ff..6e951cf3c49 100644 --- a/solr/webapp/web/js/angular/controllers/dataimport.js +++ b/solr/webapp/web/js/angular/controllers/dataimport.js @@ -40,9 +40,14 @@ solrAdminApp.controller('DataImportController', }); DataImport.config({core: $routeParams.core}, function (data) { + try { + var xml = $.parseXML(data.config); + } catch (err) { + $scope.hasHandlers = false; + return; + } $scope.config = data.config; $scope.entities = []; - var xml = $.parseXML($scope.config); $('document > entity', xml).each(function (i, element) { $scope.entities.push($(element).attr('name')); }); @@ -134,6 +139,10 @@ solrAdminApp.controller('DataImportController', $scope.isStatusLoading = true; DataImport.status({core: $routeParams.core}, function (data) { + if (data[0] == "<") { + $scope.hasHandlers = false; + return; + } var now = new Date(); $scope.lastUpdate = now.toTimeString().split(' ').shift(); diff --git a/solr/webapp/web/js/angular/services.js b/solr/webapp/web/js/angular/services.js index a334df65792..ea357d452b3 100644 --- a/solr/webapp/web/js/angular/services.js +++ b/solr/webapp/web/js/angular/services.js @@ -133,10 +133,12 @@ solrAdminServices.factory('System', .factory('DataImport', ['$resource', function($resource) { return $resource('/solr/:core/dataimport', {core: '@core', indent:'on', wt:'json', _:Date.now()}, { - "config": {params: {command: "show-config"}, transformResponse: function(data) { - return {config: data}; - }}, - "status": {params: {command: "status"}}, + "config": {params: {command: "show-config", doNotIntercept: "true"}, + transformResponse: function(data) { + return {config: data}; + } + }, + "status": {params: {command: "status", doNotIntercept: "true"}}, "reload": {params: {command: "reload-config"}}, "post": {method: "POST", headers: {'Content-type': 'application/x-www-form-urlencoded'},