Index: /trunk/autoquest-htmlmonitor/src/main/java/de/ugoe/cs/autoquest/htmlmonitor/HtmlMonitorOutputWriter.java
===================================================================
--- /trunk/autoquest-htmlmonitor/src/main/java/de/ugoe/cs/autoquest/htmlmonitor/HtmlMonitorOutputWriter.java	(revision 2232)
+++ /trunk/autoquest-htmlmonitor/src/main/java/de/ugoe/cs/autoquest/htmlmonitor/HtmlMonitorOutputWriter.java	(revision 2233)
@@ -537,6 +537,10 @@
         if (oldLogDir.exists() && oldLogDir.isDirectory() && (oldLogDir.listFiles() != null)) {
             boolean allFilesRenamed = true;
-            for (File oldLogFile : oldLogDir.listFiles()) {
-                allFilesRenamed &= oldLogFile.renameTo(new File(newLogDir, oldLogFile.getName()));
+            File[] children = oldLogDir.listFiles();
+            
+            if (children != null) {
+            	for (File oldLogFile : children) {
+            		allFilesRenamed &= oldLogFile.renameTo(new File(newLogDir, oldLogFile.getName()));
+            	}
             }
             
Index: /trunk/autoquest-plugin-html/src/main/java/de/ugoe/cs/autoquest/plugin/html/commands/CMDcorrectHTMLLogDirs.java
===================================================================
--- /trunk/autoquest-plugin-html/src/main/java/de/ugoe/cs/autoquest/plugin/html/commands/CMDcorrectHTMLLogDirs.java	(revision 2232)
+++ /trunk/autoquest-plugin-html/src/main/java/de/ugoe/cs/autoquest/plugin/html/commands/CMDcorrectHTMLLogDirs.java	(revision 2233)
@@ -133,7 +133,6 @@
                         Console.println("moved "  + file + " to " + destination);
 
-                        if ((file.getParentFile().list() == null) ||
-                            (file.getParentFile().list().length == 0))
-                        {
+                        String[] children = file.getParentFile().list();
+                        if ((children == null) || (children.length == 0)) {
                             if (file.getParentFile().delete()) {
                                 Console.println("removed directory "  + file.getParentFile());
Index: /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/HTTPLogParserTest.java
===================================================================
--- /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/HTTPLogParserTest.java	(revision 2232)
+++ /trunk/autoquest-plugin-http-test/src/test/java/de/ugoe/cs/autoquest/http/HTTPLogParserTest.java	(revision 2233)
@@ -263,6 +263,9 @@
         if (file.exists()) {
             if (file.isDirectory()) {
-                for (File child : file.listFiles()) {
-                    deleteFiles(child);
+            	File[] children = file.listFiles();
+            	if (children != null) {
+                    for (File child : file.listFiles()) {
+                        deleteFiles(child);
+                    }
                 }
             }
Index: /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/commands/CMDparseDirHTTP.java
===================================================================
--- /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/commands/CMDparseDirHTTP.java	(revision 2232)
+++ /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/commands/CMDparseDirHTTP.java	(revision 2233)
@@ -89,9 +89,12 @@
         if (file.isDirectory()) {
             String[] children = file.list();
-            Arrays.sort(children);
             
-            for (String child : children) {
-                File childFile = new File(file, child);
-                parseFile(childFile, parser);
+            if (children != null) {
+            	Arrays.sort(children);
+
+            	for (String child : children) {
+            		File childFile = new File(file, child);
+            		parseFile(childFile, parser);
+            	}
             }
         }
Index: /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java
===================================================================
--- /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java	(revision 2232)
+++ /trunk/autoquest-plugin-http/src/main/java/de/ugoe/cs/autoquest/plugin/http/eventcore/SimpleSOAPEventType.java	(revision 2233)
@@ -267,5 +267,8 @@
             System.out.print("fu!");
         }
-        return hashCode + calledMethod.hashCode() + serviceName.hashCode() + clientName.hashCode();
+        return hashCode +
+            (calledMethod != null ? calledMethod.hashCode() : 0) +
+            (serviceName != null ? serviceName.hashCode() : 0) +
+            (clientName != null ? clientName.hashCode() : 0);
     }
 
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDcorrectDirOldJFC.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDcorrectDirOldJFC.java	(revision 2232)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDcorrectDirOldJFC.java	(revision 2233)
@@ -69,10 +69,14 @@
         String absolutPath = folder.getAbsolutePath();
         String absolutDestPath = destfolder.getAbsolutePath();
-        for (String filename : folder.list()) {
-            String source = absolutPath + "/" + filename;
-            String dest = absolutDestPath + "/" + filename;
-            Console.traceln(Level.INFO, "Processing file: " + source);
+        String[] children = folder.list();
+        
+        if (children != null) {
+            for (String filename : folder.list()) {
+                String source = absolutPath + "/" + filename;
+                String dest = absolutDestPath + "/" + filename;
+                Console.traceln(Level.INFO, "Processing file: " + source);
 
-            corrector.correctFile(source, dest);
+                corrector.correctFile(source, dest);
+            }
         }
     }
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirJFC.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirJFC.java	(revision 2232)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirJFC.java	(revision 2233)
@@ -69,14 +69,18 @@
 
         String absolutPath = folder.getAbsolutePath();
-        for (String filename : folder.list()) {
-            String source = absolutPath + File.separator + filename;
-            Console.traceln(Level.INFO, "Processing file: " + source);
+        String[] children = folder.list();
+        
+        if (children != null) {
+        	for (String filename : children) {
+        		String source = absolutPath + File.separator + filename;
+        		Console.traceln(Level.INFO, "Processing file: " + source);
 
-            try {
-                parser.parseFile(source);
-            }
-            catch (Exception e) {
-                Console.printerrln("Could not parse " + source + ": " + e.getMessage());
-            }
+        		try {
+        			parser.parseFile(source);
+        		}
+        		catch (Exception e) {
+        			Console.printerrln("Could not parse " + source + ": " + e.getMessage());
+        		}
+        	}
         }
 
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirOldJFC.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirOldJFC.java	(revision 2232)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseDirOldJFC.java	(revision 2233)
@@ -69,13 +69,17 @@
 
         String absolutPath = folder.getAbsolutePath();
-        for (String filename : folder.list()) {
-            String source = absolutPath + File.separator + filename;
-            Console.traceln(Level.INFO, "Processing file: " + source);
+        String[] children = folder.list();
+        
+        if (children != null) {
+            for (String filename : children) {
+            	String source = absolutPath + File.separator + filename;
+            	Console.traceln(Level.INFO, "Processing file: " + source);
 
-            try {
-                parser.parseFile(source);
-            }
-            catch (Exception e) {
-                Console.printerrln("Could not parse " + source + ": " + e.getMessage());
+            	try {
+            		parser.parseFile(source);
+            	}
+            	catch (Exception e) {
+            		Console.printerrln("Could not parse " + source + ": " + e.getMessage());
+            	}
             }
         }
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseJFCDirwithJacaretoIndices.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseJFCDirwithJacaretoIndices.java	(revision 2232)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDparseJFCDirwithJacaretoIndices.java	(revision 2233)
@@ -83,13 +83,17 @@
 
         String absolutPath = folder.getAbsolutePath();
-        for (String filename : folder.list()) {
-            String source = absolutPath + File.separator + filename;
-            Console.traceln(Level.INFO, "Processing file: " + source);
-
-            try {
-                parser.parseFile(source);
-            }
-            catch (Exception e) {
-                Console.printerrln("Could not parse " + source + ": " + e.getMessage());
+        String[] children = folder.list();
+        
+        if (children != null) {
+            for (String filename : children) {
+            	String source = absolutPath + File.separator + filename;
+            	Console.traceln(Level.INFO, "Processing file: " + source);
+
+            	try {
+            		parser.parseFile(source);
+            	}
+            	catch (Exception e) {
+            		Console.printerrln("Could not parse " + source + ": " + e.getMessage());
+            	}
             }
         }
Index: /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDpreprocessDirJFC.java
===================================================================
--- /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDpreprocessDirJFC.java	(revision 2232)
+++ /trunk/autoquest-plugin-jfc/src/main/java/de/ugoe/cs/autoquest/plugin/jfc/commands/CMDpreprocessDirJFC.java	(revision 2233)
@@ -69,53 +69,57 @@
 		String absolutPathTarget = targetFolder.getAbsolutePath();
 
-		for (String filename : sourceFolder.list()) {
-			String source = absolutPathSource + "/" + filename;
-			Console.traceln(Level.INFO, "Preprocessing file: " + source);
-			File file = new File(source);
-			InputStreamReader reader;
-			try {
-				FileInputStream fis = new FileInputStream(file);
-				reader = new InputStreamReader(fis, "UTF-16");
-			} catch (FileNotFoundException e) {
-				Console.printerrln(e.getMessage());
-				return;
-			} catch (UnsupportedEncodingException e) {
-				Console.printerrln(e.getMessage());
-				return;
-			}
-			char[] buffer = new char[(int) file.length()];
-			try {
-				reader.read(buffer);
-				reader.close();
-			} catch (IOException e) {
-				Console.printerrln(e.getMessage());
-				return;
-			}
+        String[] children = sourceFolder.list();
+        
+        if (children != null) {
+    		for (String filename : children) {
+    			String source = absolutPathSource + "/" + filename;
+    			Console.traceln(Level.INFO, "Preprocessing file: " + source);
+    			File file = new File(source);
+    			InputStreamReader reader;
+    			try {
+    				FileInputStream fis = new FileInputStream(file);
+    				reader = new InputStreamReader(fis, "UTF-16");
+    			} catch (FileNotFoundException e) {
+    				Console.printerrln(e.getMessage());
+    				return;
+    			} catch (UnsupportedEncodingException e) {
+    				Console.printerrln(e.getMessage());
+    				return;
+    			}
+    			char[] buffer = new char[(int) file.length()];
+    			try {
+    				reader.read(buffer);
+    				reader.close();
+    			} catch (IOException e) {
+    				Console.printerrln(e.getMessage());
+    				return;
+    			}
 
-			String content = new String(buffer).trim();
+    			String content = new String(buffer).trim();
 
-			int index = filename.lastIndexOf('.');
-			String target = absolutPathTarget + "/"
-					+ filename.substring(0, index) + ".xml";
+    			int index = filename.lastIndexOf('.');
+    			String target = absolutPathTarget + "/"
+    					+ filename.substring(0, index) + ".xml";
 
-			Console.traceln(Level.INFO, "   Saving as: " + target);
+    			Console.traceln(Level.INFO, "   Saving as: " + target);
 
-			OutputStreamWriter writer;
-			try {
-				FileOutputStream fos = new FileOutputStream(target);
-				writer = new OutputStreamWriter(fos, "UTF-8");
-			} catch (IOException e) {
-				Console.printerrln(e.getMessage());
-				return;
-			}
-			try {
-				writer.write(content);
-				if (!content.endsWith("</sessions>")) {
-					writer.write("</sessions>");
-				}
-				writer.close();
-			} catch (IOException e) {
-				Console.printerrln(e.getMessage());
-			}
+    			OutputStreamWriter writer;
+    			try {
+    				FileOutputStream fos = new FileOutputStream(target);
+    				writer = new OutputStreamWriter(fos, "UTF-8");
+    			} catch (IOException e) {
+    				Console.printerrln(e.getMessage());
+    				return;
+    			}
+    			try {
+    				writer.write(content);
+    				if (!content.endsWith("</sessions>")) {
+    					writer.write("</sessions>");
+    				}
+    				writer.close();
+    			} catch (IOException e) {
+    				Console.printerrln(e.getMessage());
+    			}
+    		}
 		}
 	}
Index: /trunk/autoquest-plugin-mfc-test/src/test/java/de/ugoe/cs/autoquest/plugin/mfc/EventGenerationRuleTest.java
===================================================================
--- /trunk/autoquest-plugin-mfc-test/src/test/java/de/ugoe/cs/autoquest/plugin/mfc/EventGenerationRuleTest.java	(revision 2232)
+++ /trunk/autoquest-plugin-mfc-test/src/test/java/de/ugoe/cs/autoquest/plugin/mfc/EventGenerationRuleTest.java	(revision 2233)
@@ -422,8 +422,10 @@
             Console.printerrln("Invalid rules file.");
             e.printStackTrace();
+            return null;
         }
         catch (IOException e) {
             Console.printerrln("Invalid rules file.");
             e.printStackTrace();
+            return null;
         }
 
Index: /trunk/autoquest-plugin-mfc/src/main/java/de/ugoe/cs/autoquest/plugin/mfc/LogPreprocessor.java
===================================================================
--- /trunk/autoquest-plugin-mfc/src/main/java/de/ugoe/cs/autoquest/plugin/mfc/LogPreprocessor.java	(revision 2232)
+++ /trunk/autoquest-plugin-mfc/src/main/java/de/ugoe/cs/autoquest/plugin/mfc/LogPreprocessor.java	(revision 2233)
@@ -144,9 +144,13 @@
 		}
 		String absolutPath = folder.getAbsolutePath();
-		for (String filename : folder.list()) {
-			String source = absolutPath + "/" + filename;
-			Console.traceln(Level.INFO, "Processing file: " + source);
-			processFile(source, targetFile);
-		}
+		
+		String[] filenames = folder.list();
+		if (filenames != null) {
+			for (String filename : filenames) {
+				String source = absolutPath + "/" + filename;
+				Console.traceln(Level.INFO, "Processing file: " + source);
+				processFile(source, targetFile);
+			}
+	    }
 
 		if (sessionOpen) {
Index: /trunk/autoquest-plugin-uml-test/src/test/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtilsTest.java
===================================================================
--- /trunk/autoquest-plugin-uml-test/src/test/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtilsTest.java	(revision 2232)
+++ /trunk/autoquest-plugin-uml-test/src/test/java/de/ugoe/cs/autoquest/plugin/uml/UMLUtilsTest.java	(revision 2233)
@@ -414,6 +414,9 @@
         if (file.exists()) {
             if (file.isDirectory()) {
-                for (File child : file.listFiles()) {
-                    deleteFiles(child);
+            	File[] children = file.listFiles();
+            	if (children != null) {
+                    for (File child : children) {
+                        deleteFiles(child);
+                    }
                 }
             }
Index: /trunk/autoquest-ui-core/src/main/java/de/ugoe/cs/autoquest/commands/misc/CMDls.java
===================================================================
--- /trunk/autoquest-ui-core/src/main/java/de/ugoe/cs/autoquest/commands/misc/CMDls.java	(revision 2232)
+++ /trunk/autoquest-ui-core/src/main/java/de/ugoe/cs/autoquest/commands/misc/CMDls.java	(revision 2233)
@@ -52,10 +52,12 @@
 			
 			File[] filesList = dir.listFiles();
-			for (File file : filesList) {
-				if (file.isFile()) {
-					Console.println("       " + file.getName());
-				} else {
-					if (file.isDirectory()) {
-						Console.println("(d) " + file.getName());
+			if (filesList != null) {
+				for (File file : filesList) {
+					if (file.isFile()) {
+						Console.println("       " + file.getName());
+					} else {
+						if (file.isDirectory()) {
+							Console.println("(d) " + file.getName());
+						}
 					}
 				}
Index: /trunk/java-utils/src/main/java/de/ugoe/cs/util/console/CommandExecuter.java
===================================================================
--- /trunk/java-utils/src/main/java/de/ugoe/cs/util/console/CommandExecuter.java	(revision 2232)
+++ /trunk/java-utils/src/main/java/de/ugoe/cs/util/console/CommandExecuter.java	(revision 2233)
@@ -269,9 +269,12 @@
 
                         if (packageDir.isDirectory()) {
-                            for (File classFile : packageDir.listFiles(filter)) {
-                                String className = classFile.getName().substring
-                                    (0, classFile.getName().lastIndexOf('.'));
-                                classNames.add(packageName + "." + className);
-                            }
+                        	File[] classFiles = packageDir.listFiles(filter);
+                        	if (classFiles != null) {
+                        		for (File classFile : classFiles) {
+                        			String className = classFile.getName().substring
+                        					(0, classFile.getName().lastIndexOf('.'));
+                        			classNames.add(packageName + "." + className);
+                        		}
+                        	}
                         }
                         else {
