diff --git a/src/main/java/com/gitblit/servlet/GitblitContext.java b/src/main/java/com/gitblit/servlet/GitblitContext.java
index fb8f6b9..750da79 100644
--- a/src/main/java/com/gitblit/servlet/GitblitContext.java
+++ b/src/main/java/com/gitblit/servlet/GitblitContext.java
@@ -24,6 +24,7 @@
 import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Set;
 
 import javax.naming.Context;
 import javax.naming.InitialContext;
@@ -455,7 +456,12 @@
 	}
 
 	protected void extractResources(ServletContext context, String path, File toDir) {
-		for (String resource : context.getResourcePaths(path)) {
+		Set<String> resources = context.getResourcePaths(path);
+		if (resources == null) {
+			logger.warn("There are no WAR resources to extract from {}", path);
+			return;
+		}
+		for (String resource : resources) {
 			// extract the resource to the directory if it does not exist
 			File f = new File(toDir, resource.substring(path.length()));
 			if (!f.exists()) {
