diff --git a/src/main/java/caosdb/server/accessControl/UserSources.java b/src/main/java/caosdb/server/accessControl/UserSources.java index a3f35c11b0f3bcc10e67397bd8c48c6e969fcc7d..d0f707ebaaec8aa97e9b87d760fc0631cbd2f72a 100644 --- a/src/main/java/caosdb/server/accessControl/UserSources.java +++ b/src/main/java/caosdb/server/accessControl/UserSources.java @@ -31,6 +31,7 @@ import caosdb.server.utils.ServerMessages; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; +import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.HashSet; import java.util.Set; @@ -72,12 +73,14 @@ public class UserSources extends HashMap<String, UserSource> { @SuppressWarnings("unchecked") final Class<? extends UserSource> clazz = (Class<? extends UserSource>) Class.forName(className); - this.put(clazz.newInstance()); - } catch (final ClassNotFoundException e) { - logger.error("LOAD_USER_SOURCE", e); - } catch (final InstantiationException e) { - logger.error("LOAD_USER_SOURCE", e); - } catch (final IllegalAccessException e) { + this.put(clazz.getDeclaredConstructor().newInstance()); + } catch (IllegalArgumentException + | InvocationTargetException + | NoSuchMethodException + | SecurityException + | ClassNotFoundException + | InstantiationException + | IllegalAccessException e) { logger.error("LOAD_USER_SOURCE", e); } }