diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js
index 3458d7ee8ac5ad75805bcccac9ab09e9a5d85844..7bc783e5f7db22fceb13359aabab7dda7a4ae5b3 100644
--- a/frontend-js/src/main/js/ServerConnector.js
+++ b/frontend-js/src/main/js/ServerConnector.js
@@ -1029,24 +1029,22 @@ ServerConnector.getClosestElementsByCoordinates = function(params) {
 
 ServerConnector.login = function(login, password) {
   var self = this;
-  return new Promise(function(resolve, reject) {
-    var params = {};
-    if (login !== undefined) {
-      params.login = login;
-      params.password = password;
+  var params = {};
+  if (login !== undefined) {
+    params.login = login;
+    params.password = password;
+  } else {
+    params.login = "anonymous";
+  }
+  return self.sendPostRequest(self.loginUrl(), params).then(function(content) {
+    var obj = JSON.parse(content);
+    var token = obj.id;
+    if (token === undefined) {
+      return Promise.reject(obj.error);
     } else {
-      params.login = "anonymous";
+      self.getSessionData().setToken(token);
+      return Promise.resolve(token);
     }
-    return self.sendPostRequest(self.loginUrl(), params).then(function(content) {
-      var obj = JSON.parse(content);
-      var token = obj.id;
-      if (token === undefined) {
-        reject(obj.error);
-      } else {
-        self.getSessionData().setToken(token);
-        resolve(token);
-      }
-    });
   });
 };