diff --git a/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar b/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar
index 34bea32acc567a6f64c816447552cf902bcb60c2..44888d6beccbe790dc32e75bb3e0416d43dbaad6 100644
Binary files a/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar and b/Kieker.WebGUI/lib/kieker-1.5-SNAPSHOT.jar differ
diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AnalysisControllerBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AnalysisControllerBean.java
index f77b02136f272379ba6bcea46acd9b902d5e57c5..dff9cdd0cde360372b9d6498d4741c56bebbc3a6 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AnalysisControllerBean.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/AnalysisControllerBean.java
@@ -29,6 +29,7 @@ import kieker.analysis.AnalysisController;
 import kieker.analysis.model.analysisMetaModel.MIProject;
 import kieker.common.logging.Log;
 import kieker.common.logging.LogFactory;
+import kieker.webgui.common.PluginClassLoader;
 
 /**
  * 
@@ -83,7 +84,7 @@ public class AnalysisControllerBean {
 				final File tempFile = File.createTempFile("java", ".tmp");
 				AnalysisController.saveToFile(tempFile, mProject);
                 /* Try to create the controller. */
-				this.controller = new AnalysisController(tempFile);
+				this.controller = new AnalysisController(tempFile, PluginClassLoader.getInstance());
                 /* Don't forget to remove the temporary file. */
 				tempFile.delete();
 			} catch (final IOException ex) {
diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedMainProjectBean.java b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedMainProjectBean.java
index e8a8b263908590bb801c2d4e0146764ad0681eab..5a5e1e355f2213c380ae2ee948aeee424c89c77b 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedMainProjectBean.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/beans/session/SelectedMainProjectBean.java
@@ -42,9 +42,11 @@ import kieker.analysis.model.analysisMetaModel.MIPlugin;
 import kieker.analysis.model.analysisMetaModel.MIProject;
 import kieker.analysis.model.analysisMetaModel.MIProperty;
 import kieker.analysis.model.analysisMetaModel.impl.MAnalysisMetaModelFactory;
-import kieker.analysis.plugin.AbstractFilterPlugin;
+import kieker.analysis.plugin.filter.AbstractFilterPlugin;
 import kieker.analysis.plugin.AbstractPlugin;
-import kieker.analysis.plugin.AbstractReaderPlugin;
+import kieker.analysis.plugin.reader.AbstractReaderPlugin;
+import kieker.analysis.plugin.filter.AbstractFilterPlugin;
+import kieker.analysis.plugin.reader.AbstractReaderPlugin;
 import kieker.analysis.repository.AbstractRepository;
 import kieker.common.configuration.Configuration;
 import kieker.common.logging.Log;
diff --git a/Kieker.WebGUI/src/main/java/kieker/webgui/common/FileManager.java b/Kieker.WebGUI/src/main/java/kieker/webgui/common/FileManager.java
index 1e70b25dc00e3422563e658c9b1058176ad58121..79661023913f28fb33d6bb1092498d8d6f1b8a34 100644
--- a/Kieker.WebGUI/src/main/java/kieker/webgui/common/FileManager.java
+++ b/Kieker.WebGUI/src/main/java/kieker/webgui/common/FileManager.java
@@ -142,7 +142,7 @@ public final class FileManager {
 				final File fileProject = new File(dirProject, projectName + FileManager.EXTENSION);
 				try {
 					// TODO Copy before saving as the controller destroys at least the dependencies.
-					final AnalysisController controller = new AnalysisController(project);
+					final AnalysisController controller = new AnalysisController(project, PluginClassLoader.getInstance());
 					if (controller.saveToFile(fileProject)) {
 						FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "", "Project saved: " + project.getName()));
 						return true;