X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.enterprise%2Fsrc%2Forg%2Fargeo%2Fosgi%2Fuseradmin%2FLdapUserAdmin.java;h=cf97ebea393e5cbe06a9de38180ec14615d858da;hb=2111a76162534100967eb0e7733632e80d9ddc5f;hp=494d9c2dfaf0c0b78981f0615daf1719a93cb496;hpb=6338d85d3f970dd0eb8845693ddad90a93b99d03;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdapUserAdmin.java b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdapUserAdmin.java index 494d9c2df..cf97ebea3 100644 --- a/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdapUserAdmin.java +++ b/org.argeo.enterprise/src/org/argeo/osgi/useradmin/LdapUserAdmin.java @@ -101,11 +101,15 @@ public class LdapUserAdmin extends AbstractUserDirectory { @Override protected Boolean daoHasRole(LdapName dn) { - return daoGetRole(dn) != null; + try { + return daoGetRole(dn) != null; + } catch (NameNotFoundException e) { + return false; + } } @Override - protected DirectoryUser daoGetRole(LdapName name) { + protected DirectoryUser daoGetRole(LdapName name) throws NameNotFoundException { try { Attributes attrs = getLdapContext().getAttributes(name); if (attrs.size() == 0) @@ -119,6 +123,8 @@ public class LdapUserAdmin extends AbstractUserDirectory { else throw new UserDirectoryException("Unsupported LDAP type for " + name); return res; + } catch (NameNotFoundException e) { + throw e; } catch (NamingException e) { log.error("Cannot get role: " + name, e); return null;