diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js
index d048676ae1226b97965528f41630743e41e16689..72985ccbd041c6b4552d7e0d220d5573f53e644f 100644
--- a/frontend-js/src/main/js/ServerConnector.js
+++ b/frontend-js/src/main/js/ServerConnector.js
@@ -195,7 +195,7 @@ ServerConnector.sendRequest = function (params) {
       self.getSessionData().setToken(undefined);
       var login = self.getSessionData().getLogin();
       promise = self.login().then(function () {
-        if (login === "anonymous" || login === undefined) {
+        if (login === "anonymous" || login === undefined || login === null) {
           window.location.reload(false);
         } else {
           window.location.href = ServerConnector.getServerBaseUrl() + "login.xhtml?from=" + encodeURI(window.location.href);
@@ -740,7 +740,7 @@ ServerConnector.getFullOverlayElementUrl = function (queryParams, filterParams)
 };
 
 ServerConnector.getSubmitErrorToMinervaNetUrl = function () {
-    return this.getApiBaseUrl() + 'minervanet/submitError';
+  return this.getApiBaseUrl() + 'minervanet/submitError';
 };
 
 ServerConnector.idsToString = function (ids) {
@@ -1217,10 +1217,10 @@ ServerConnector.getProjectStatistics = function (projectId) {
  */
 ServerConnector.getLoggedUser = function () {
   var self = this;
-  if (self._loggedUser !== undefined) {
+  if (self._loggedUser !== undefined && self._loggedUser !== null) {
     return Promise.resolve(self._loggedUser);
   } else {
-    self._loggedUser = self.getUser(self.getSessionData().getLogin()).then(function (user) {
+    return self.getUser(self.getSessionData().getLogin()).then(function (user) {
       if (user !== null) {
         self._loggedUser = user;
         return self._loggedUser;
@@ -1228,7 +1228,6 @@ ServerConnector.getLoggedUser = function () {
         return Promise.reject(new Error("User " + self.getSessionData().getLogin() + " doesn't exist"));
       }
     });
-    return self._loggedUser;
   }
 };
 
diff --git a/frontend-js/src/main/js/SessionData.js b/frontend-js/src/main/js/SessionData.js
index ff29324871a9156e084f2408ec8a65999b38129c..ccffea15767f07bf3cd02e6bf9fd7eda0244c40d 100644
--- a/frontend-js/src/main/js/SessionData.js
+++ b/frontend-js/src/main/js/SessionData.js
@@ -71,7 +71,7 @@ SessionData.prototype.getProjectId = function () {
  */
 SessionData.prototype.getShowComments = function () {
   var key = this.getKey(SessionObjectType.SHOW_COMMENT);
-  return window.sessionStorage.getItem(key) === "true";
+  return window.localStorage.getItem(key) === "true";
 };
 
 /**
@@ -80,7 +80,7 @@ SessionData.prototype.getShowComments = function () {
  */
 SessionData.prototype.setSearchQuery = function (value) {
   var key = this.getKey(SessionObjectType.SEARCH_QUERY);
-  window.sessionStorage.setItem(key, JSON.stringify(value));
+  window.localStorage.setItem(key, JSON.stringify(value));
 };
 
 /**
@@ -109,7 +109,7 @@ SessionData.prototype.setQuery = function (param) {
  */
 SessionData.prototype.getSearchQuery = function () {
   var key = this.getKey(SessionObjectType.SEARCH_QUERY);
-  var result = window.sessionStorage.getItem(key);
+  var result = window.localStorage.getItem(key);
   if (result !== undefined && result !== null) {
     return JSON.parse(result);
   } else {
@@ -123,7 +123,7 @@ SessionData.prototype.getSearchQuery = function () {
  */
 SessionData.prototype.setDrugQuery = function (value) {
   var key = this.getKey(SessionObjectType.DRUG_QUERY);
-  window.sessionStorage.setItem(key, JSON.stringify(value));
+  window.localStorage.setItem(key, JSON.stringify(value));
 };
 
 /**
@@ -132,7 +132,7 @@ SessionData.prototype.setDrugQuery = function (value) {
  */
 SessionData.prototype.getDrugQuery = function () {
   var key = this.getKey(SessionObjectType.DRUG_QUERY);
-  var result = window.sessionStorage.getItem(key);
+  var result = window.localStorage.getItem(key);
   if (result !== undefined && result !== null) {
     return JSON.parse(result);
   } else {
@@ -146,7 +146,7 @@ SessionData.prototype.getDrugQuery = function () {
  */
 SessionData.prototype.setMiRnaQuery = function (value) {
   var key = this.getKey(SessionObjectType.MI_RNA_QUERY);
-  window.sessionStorage.setItem(key, JSON.stringify(value));
+  window.localStorage.setItem(key, JSON.stringify(value));
 };
 
 /**
@@ -155,7 +155,7 @@ SessionData.prototype.setMiRnaQuery = function (value) {
  */
 SessionData.prototype.getMiRnaQuery = function () {
   var key = this.getKey(SessionObjectType.MI_RNA_QUERY);
-  var result = window.sessionStorage.getItem(key);
+  var result = window.localStorage.getItem(key);
   if (result !== undefined && result !== null) {
     return JSON.parse(result);
   } else {
@@ -169,7 +169,7 @@ SessionData.prototype.getMiRnaQuery = function () {
  */
 SessionData.prototype.setChemicalQuery = function (value) {
   var key = this.getKey(SessionObjectType.CHEMICAL_QUERY);
-  window.sessionStorage.setItem(key, JSON.stringify(value));
+  window.localStorage.setItem(key, JSON.stringify(value));
 };
 
 /**
@@ -178,7 +178,7 @@ SessionData.prototype.setChemicalQuery = function (value) {
  */
 SessionData.prototype.getChemicalQuery = function () {
   var key = this.getKey(SessionObjectType.CHEMICAL_QUERY);
-  var result = window.sessionStorage.getItem(key);
+  var result = window.localStorage.getItem(key);
   if (result !== undefined && result !== null) {
     return JSON.parse(result);
   } else {
@@ -192,7 +192,7 @@ SessionData.prototype.getChemicalQuery = function () {
  */
 SessionData.prototype.setShowComments = function (value) {
   var key = this.getKey(SessionObjectType.SHOW_COMMENT);
-  window.sessionStorage.setItem(key, value + "");
+  window.localStorage.setItem(key, value + "");
 };
 
 /**
@@ -201,7 +201,7 @@ SessionData.prototype.setShowComments = function (value) {
  */
 SessionData.prototype.getSelectedBackgroundOverlay = function () {
   var key = this.getKey(SessionObjectType.SELECTED_BACKGROUND_OVERLAY);
-  var result = window.sessionStorage.getItem(key);
+  var result = window.localStorage.getItem(key);
   if (result !== undefined && result !== null) {
     return parseInt(result);
   } else {
@@ -215,7 +215,7 @@ SessionData.prototype.getSelectedBackgroundOverlay = function () {
  */
 SessionData.prototype.setSelectedBackgroundOverlay = function (value) {
   var key = this.getKey(SessionObjectType.SELECTED_BACKGROUND_OVERLAY);
-  window.sessionStorage.setItem(key, value + "");
+  window.localStorage.setItem(key, value + "");
 };
 
 /**
@@ -224,7 +224,7 @@ SessionData.prototype.setSelectedBackgroundOverlay = function (value) {
  */
 SessionData.prototype.getVisibleOverlays = function () {
   var key = this.getKey(SessionObjectType.VISIBLE_OVERLAYS);
-  var value = window.sessionStorage.getItem(key);
+  var value = window.localStorage.getItem(key);
   if (value === undefined || value === null || value === "") {
     return [];
   } else {
@@ -242,7 +242,7 @@ SessionData.prototype.getVisibleOverlays = function () {
  */
 SessionData.prototype.setVisibleOverlays = function (value) {
   var key = this.getKey(SessionObjectType.VISIBLE_OVERLAYS);
-  window.sessionStorage.setItem(key, value + "");
+  window.localStorage.setItem(key, value + "");
 };
 
 /**
@@ -252,7 +252,7 @@ SessionData.prototype.setVisibleOverlays = function (value) {
  */
 SessionData.prototype.setZoomLevel = function (model, value) {
   var key = this.getKey(SessionObjectType.ZOOM_LEVEL, [model.getId()]);
-  window.sessionStorage.setItem(key, value + "");
+  window.localStorage.setItem(key, value + "");
 };
 
 /**
@@ -262,7 +262,7 @@ SessionData.prototype.setZoomLevel = function (model, value) {
  */
 SessionData.prototype.getZoomLevel = function (model) {
   var key = this.getKey(SessionObjectType.ZOOM_LEVEL, [model.getId()]);
-  var value = window.sessionStorage.getItem(key);
+  var value = window.localStorage.getItem(key);
   if (value !== undefined && value !== null) {
     return parseInt(value);
   } else {
@@ -277,9 +277,9 @@ SessionData.prototype.getZoomLevel = function (model) {
 SessionData.prototype.setToken = function (token) {
   var key = SessionObjectType.TOKEN;
   if (token === undefined || token === null) {
-    window.sessionStorage.removeItem(key);
+    window.localStorage.removeItem(key);
   } else {
-    window.sessionStorage.setItem(key, token);
+    window.localStorage.setItem(key, token);
   }
 };
 
@@ -289,7 +289,7 @@ SessionData.prototype.setToken = function (token) {
  */
 SessionData.prototype.getToken = function () {
   var key = SessionObjectType.TOKEN;
-  return window.sessionStorage.getItem(key);
+  return window.localStorage.getItem(key);
 };
 
 /**
@@ -299,9 +299,9 @@ SessionData.prototype.getToken = function () {
 SessionData.prototype.setLogin = function (login) {
   var key = SessionObjectType.LOGIN;
   if (login === undefined || login === null) {
-    window.sessionStorage.removeItem(key);
+    window.localStorage.removeItem(key);
   } else {
-    window.sessionStorage.setItem(key, login);
+    window.localStorage.setItem(key, login);
   }
 };
 
@@ -311,7 +311,7 @@ SessionData.prototype.setLogin = function (login) {
  */
 SessionData.prototype.getLogin = function () {
   var key = SessionObjectType.LOGIN;
-  return window.sessionStorage.getItem(key);
+  return window.localStorage.getItem(key);
 };
 
 /**
@@ -321,7 +321,7 @@ SessionData.prototype.getLogin = function () {
  */
 SessionData.prototype.setCenter = function (model, value) {
   var key = this.getKey(SessionObjectType.CENTER, [model.getId()]);
-  window.sessionStorage.setItem(key, value.x + "," + value.y);
+  window.localStorage.setItem(key, value.x + "," + value.y);
 };
 
 /**
@@ -331,7 +331,7 @@ SessionData.prototype.setCenter = function (model, value) {
  */
 SessionData.prototype.getCenter = function (model) {
   var key = this.getKey(SessionObjectType.CENTER, [model.getId()]);
-  var value = window.sessionStorage.getItem(key);
+  var value = window.localStorage.getItem(key);
   if (value !== undefined && value !== null) {
     var tmp = value.split(",");
     return new Point(tmp[0], tmp[1]);
@@ -357,7 +357,7 @@ SessionData.prototype.getKey = function (type, args) {
 };
 
 SessionData.prototype.clear = function () {
-  window.sessionStorage.clear();
+  window.localStorage.clear();
 };
 
 module.exports = SessionData;