diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Client.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Client.java index 9f52b70bcaa731b87b590d309af23b43d9f3f05e..cfd392a59211147b18c316c77dfe29987ae9d9d0 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Client.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Client.java @@ -46,6 +46,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.Pe import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.ProjectLocatorResolver; import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.SearchLocatorResolver; import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.ViewLocatorResolverRegistry; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.menu.user.action.LoginAction; import ch.systemsx.cisd.openbis.generic.client.web.client.application.plugin.DefaultClientPluginFactoryProvider; import ch.systemsx.cisd.openbis.generic.client.web.client.application.plugin.IClientPluginFactoryProvider; import ch.systemsx.cisd.openbis.generic.client.web.client.application.plugin.ModuleInitializationController; @@ -316,8 +317,14 @@ public class Client implements EntryPoint, ValueChangeHandler<String> if (viewContext.getModel().isAnonymousLogin()) { viewContext.getService().tryToLoginAnonymously( - new BasicLoginCallback(viewContext.getCommonViewContext(), - Dict.ANONYMOUS_LOGIN_FAILED)); + new BasicLoginCallback(viewContext.getCommonViewContext(), null) + { + @Override + protected void handleMissingSession() + { + new LoginAction(viewContext).execute(); + } + }); } else { dispatcher.dispatch(AppEvents.LOGIN); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java index 440127ca7565cca84668a5ebcbe16fd2851c9826..00a3a7a76ee6f205674ae99a1f560ae1c2ff753d 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/Dict.java @@ -173,8 +173,6 @@ public abstract class Dict public static final String LOGIN_FAILED = "login_failed"; - public static final String ANONYMOUS_LOGIN_FAILED = "anonymous_login_failed"; - // // AbstractAsyncCallback // diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/BasicLoginCallback.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/BasicLoginCallback.java index 5303053a05a4390cf34fccb3a8b9a45197094079..b4dbf54dbd18fd68f538545812c1c9588cb685d7 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/BasicLoginCallback.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/BasicLoginCallback.java @@ -50,19 +50,7 @@ public class BasicLoginCallback extends AbstractAsyncCallback<SessionContext> { if (sessionContext == null) { - MessageBox.alert(viewContext.getMessage(Dict.MESSAGEBOX_WARNING), viewContext - .getMessage(warningMessageKey), new Listener<MessageBoxEvent>() - { - - // - // Listener - // - - public void handleEvent(final MessageBoxEvent be) - { - viewContext.getPageController().reload(false); - } - }); + handleMissingSession(); } else { cleanup(); @@ -79,6 +67,23 @@ public class BasicLoginCallback extends AbstractAsyncCallback<SessionContext> } } + protected void handleMissingSession() + { + MessageBox.alert(viewContext.getMessage(Dict.MESSAGEBOX_WARNING), viewContext + .getMessage(warningMessageKey), new Listener<MessageBoxEvent>() + { + + // + // Listener + // + + public void handleEvent(final MessageBoxEvent be) + { + viewContext.getPageController().reload(false); + } + }); + } + /** * Does some clean up before finishing login. */ diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js b/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js index b0ac7a518e083f631e0f5374cd0e62350001997e..e67ba45b1a9998862e76ea9a5f8c79dbaf58d92a 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js +++ b/openbis/source/java/ch/systemsx/cisd/openbis/public/common-dictionary.js @@ -126,7 +126,6 @@ var common = { login_passwordLabel: "Password", login_buttonLabel: "Login", login_failed: "Sorry, you entered an invalid username or password. Please try again.", - anonymous_login_failed: "Anonymous login is not possible.", // // AbstractAsyncCallback