diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java
index de790f129402c344081022565cf0b7870409f170..35fd8b1aaf2f4da8447b257316cdc56ff5e7aeb3 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/IUserDAO.java
@@ -25,7 +25,7 @@ import org.springframework.security.access.prepost.PreAuthorize;
 
 /**
  * This is the interface for the data access object(s) which will access for example a database to manage the available users. The methods within this interface are
- * only accessible by administrators. Furthermore the methods should be transactional.
+ * only accessible by administrators.
  * 
  * @author Nils Christian Ehmke
  */
diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/FSProjectDAOImpl.java b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/FSProjectDAOImpl.java
index f93a98c97e6baba668d575031cd21924334aeac2..9e674b6151bc1b5669869cc8061f1a3d89032cbf 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/FSProjectDAOImpl.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/FSProjectDAOImpl.java
@@ -882,7 +882,7 @@ public class FSProjectDAOImpl implements IProjectDAO, ReleaseListener {
 
 		@Override
 		public boolean apply(@Nullable final Class<? extends AbstractAnalysisComponent> elem) {
-			return !FSProjectDAOImpl.this.class2ModelInstanceConverter.isProgrammaticOnly(elem, this.classAndMethodContainer);
+			return (elem != null) && !FSProjectDAOImpl.this.class2ModelInstanceConverter.isProgrammaticOnly(elem, this.classAndMethodContainer);
 		}
 
 	}
@@ -898,6 +898,9 @@ public class FSProjectDAOImpl implements IProjectDAO, ReleaseListener {
 		@Override
 		@Nullable
 		public RepositoryDecorator apply(@Nullable final Class<AbstractRepository> repository) {
+			if (repository == null) {
+				return null;
+			}
 			return FSProjectDAOImpl.this.class2ModelInstanceConverter.convertRepositoryClass2ModelInstance(repository, this.classAndMethodContainer);
 		}
 
@@ -913,8 +916,11 @@ public class FSProjectDAOImpl implements IProjectDAO, ReleaseListener {
 
 		@Override
 		@Nullable
-		public ReaderDecorator apply(@Nullable final Class<AbstractReaderPlugin> repository) {
-			return FSProjectDAOImpl.this.class2ModelInstanceConverter.convertReaderClass2ModelInstance(repository, this.classAndMethodContainer);
+		public ReaderDecorator apply(@Nullable final Class<AbstractReaderPlugin> reader) {
+			if (reader == null) {
+				return null;
+			}
+			return FSProjectDAOImpl.this.class2ModelInstanceConverter.convertReaderClass2ModelInstance(reader, this.classAndMethodContainer);
 		}
 
 	}
@@ -929,8 +935,11 @@ public class FSProjectDAOImpl implements IProjectDAO, ReleaseListener {
 
 		@Override
 		@Nullable
-		public FilterDecorator apply(@Nullable final Class<AbstractFilterPlugin> repository) {
-			return FSProjectDAOImpl.this.class2ModelInstanceConverter.convertFilterClass2ModelInstance(repository, this.classAndMethodContainer);
+		public FilterDecorator apply(@Nullable final Class<AbstractFilterPlugin> filter) {
+			if (filter == null) {
+				return null;
+			}
+			return FSProjectDAOImpl.this.class2ModelInstanceConverter.convertFilterClass2ModelInstance(filter, this.classAndMethodContainer);
 		}
 
 	}
diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/util/PluginFinder.java b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/util/PluginFinder.java
index 99e37ee60fc351246ad04f8ab7068e8cbe540aec..ad6db336daf100ad17940cddee231c3a2aea8371 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/util/PluginFinder.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/persistence/impl/util/PluginFinder.java
@@ -180,7 +180,7 @@ public class PluginFinder {
 
 		@Override
 		public boolean apply(@Nullable final Class<?> elem) {
-			return elem.isAnnotationPresent(this.classAndMethodContainer.getRepositoryAnnotationClass())
+			return (elem != null) && elem.isAnnotationPresent(this.classAndMethodContainer.getRepositoryAnnotationClass())
 					&& this.classAndMethodContainer.getAbstractRepositoryClass().isAssignableFrom(elem);
 		}
 
@@ -201,7 +201,7 @@ public class PluginFinder {
 
 		@Override
 		public boolean apply(@Nullable final Class<?> elem) {
-			return elem.isAnnotationPresent(this.classAndMethodContainer.getPluginAnnotationClass())
+			return (elem != null) && elem.isAnnotationPresent(this.classAndMethodContainer.getPluginAnnotationClass())
 					&& this.classAndMethodContainer.getAbstractReaderPluginClass().isAssignableFrom(elem);
 		}
 
@@ -222,7 +222,7 @@ public class PluginFinder {
 
 		@Override
 		public boolean apply(@Nullable final Class<?> elem) {
-			return elem.isAnnotationPresent(this.classAndMethodContainer.getPluginAnnotationClass())
+			return (elem != null) && elem.isAnnotationPresent(this.classAndMethodContainer.getPluginAnnotationClass())
 					&& this.classAndMethodContainer.getAbstractFilterPluginClass().isAssignableFrom(elem);
 		}
 
@@ -241,7 +241,7 @@ public class PluginFinder {
 
 		@Override
 		public boolean apply(@Nullable final Class<?> elem) {
-			return !Modifier.isAbstract(elem.getModifiers());
+			return (elem != null) && !Modifier.isAbstract(elem.getModifiers());
 		}
 
 	}