X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui.workbench.rap%2Fsrc%2Forg%2Fargeo%2Fsecurity%2Fui%2Frap%2FRapWorkbenchLogin.java;h=06fc62e2e41d9cd33c7700294bf9739fb57f1c9e;hb=80033cfabcef26b413bf3f21ac8371bbe43ef882;hp=7bf487a887d02369c14ba4bb935056cdbd1efb20;hpb=e66b9893b0e511f8ab295e3cee42b7dc966f1597;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui.workbench.rap/src/org/argeo/security/ui/rap/RapWorkbenchLogin.java b/org.argeo.cms.ui.workbench.rap/src/org/argeo/security/ui/rap/RapWorkbenchLogin.java index 7bf487a88..06fc62e2e 100644 --- a/org.argeo.cms.ui.workbench.rap/src/org/argeo/security/ui/rap/RapWorkbenchLogin.java +++ b/org.argeo.cms.ui.workbench.rap/src/org/argeo/security/ui/rap/RapWorkbenchLogin.java @@ -30,13 +30,13 @@ public class RapWorkbenchLogin extends LoginEntryPoint { @Override public int createUI() { - JavaScriptExecutor jsExecutor = RWT.getClient().getService( - JavaScriptExecutor.class); + JavaScriptExecutor jsExecutor = RWT.getClient().getService(JavaScriptExecutor.class); int returnCode; try { returnCode = super.createUI(); } finally { // always reload + // TODO optimise? jsExecutor.execute("location.reload()"); } return returnCode; @@ -44,25 +44,22 @@ public class RapWorkbenchLogin extends LoginEntryPoint { @Override protected int postLogin() { + Subject subject = getLoginContext().getSubject(); final Display display = Display.getCurrent(); - Subject subject = getSubject(); if (subject.getPrincipals(X500Principal.class).isEmpty()) { - RWT.getClient().getService(JavaScriptExecutor.class) - .execute("location.reload()"); + RWT.getClient().getService(JavaScriptExecutor.class).execute("location.reload()"); } // // RUN THE WORKBENCH // Integer returnCode = null; try { - returnCode = Subject.doAs(getSubject(), - new PrivilegedAction() { - public Integer run() { - int result = createAndRunWorkbench(display, - CurrentUser.getUsername(getSubject())); - return new Integer(result); - } - }); + returnCode = Subject.doAs(subject, new PrivilegedAction() { + public Integer run() { + int result = createAndRunWorkbench(display, CurrentUser.getUsername(subject)); + return new Integer(result); + } + }); // explicit workbench closing logout(); } finally { @@ -77,8 +74,8 @@ public class RapWorkbenchLogin extends LoginEntryPoint { } @Override - protected void extendsCredentialsBlock(Composite credentialsBlock, - Locale selectedLocale, SelectionListener loginSelectionListener) { + protected void extendsCredentialsBlock(Composite credentialsBlock, Locale selectedLocale, + SelectionListener loginSelectionListener) { Button loginButton = new Button(credentialsBlock, SWT.PUSH); loginButton.setText(CmsMsg.login.lead(selectedLocale)); loginButton.setLayoutData(CmsUtils.fillWidth());