X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms%2Fsrc%2Forg%2Fargeo%2Fcms%2Fauth%2FCurrentUser.java;h=8aa08728b79846eace2b4e970c6223de4ef5fa34;hb=0dfcfef53a629cf38bade4f8605c5b7e507c7436;hp=11126014f2aba49e9a85a6ddf16f9242da8792a1;hpb=86db10fcb2299ebf71d5599a80dc54444b26f893;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms/src/org/argeo/cms/auth/CurrentUser.java b/org.argeo.cms/src/org/argeo/cms/auth/CurrentUser.java index 11126014f..8aa08728b 100644 --- a/org.argeo.cms/src/org/argeo/cms/auth/CurrentUser.java +++ b/org.argeo.cms/src/org/argeo/cms/auth/CurrentUser.java @@ -48,19 +48,18 @@ public final class CurrentUser { } public static boolean isAnonymous(Subject subject) { - return getUsername(subject).equalsIgnoreCase( - AuthConstants.ROLE_ANONYMOUS); + String username = getUsername(subject); + return username == null + || username.equalsIgnoreCase(AuthConstants.ROLE_ANONYMOUS); } private static Subject currentSubject() { + CmsView cmsView = CmsUtils.getCmsView(); + if (cmsView != null) + return cmsView.getSubject(); Subject subject = Subject.getSubject(AccessController.getContext()); if (subject != null) return subject; - if (subject == null) { - CmsView cmsView = CmsUtils.getCmsView(); - if (cmsView != null) - return cmsView.getSubject(); - } throw new CmsException("Cannot find related subject"); }