Author: cziegeler
Date: Tue Sep 21 08:00:22 2010
New Revision: 999263

URL: http://svn.apache.org/viewvc?rev=999263&view=rev
Log:
FELIX-2387 : registerServlet() throws NPE

Modified:
    
felix/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/HttpServiceImpl.java

Modified: 
felix/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/HttpServiceImpl.java
URL: 
http://svn.apache.org/viewvc/felix/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/HttpServiceImpl.java?rev=999263&r1=999262&r2=999263&view=diff
==============================================================================
--- 
felix/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/HttpServiceImpl.java
 (original)
+++ 
felix/trunk/http/base/src/main/java/org/apache/felix/http/base/internal/service/HttpServiceImpl.java
 Tue Sep 21 08:00:22 2010
@@ -16,22 +16,19 @@
  */
 package org.apache.felix.http.base.internal.service;
 
+import java.util.Dictionary;
+import java.util.HashSet;
+
+import javax.servlet.*;
+
 import org.apache.felix.http.api.ExtHttpService;
-import org.apache.felix.http.base.internal.context.ServletContextManager;
 import org.apache.felix.http.base.internal.context.ExtServletContext;
-import org.apache.felix.http.base.internal.handler.HandlerRegistry;
-import org.apache.felix.http.base.internal.handler.FilterHandler;
-import org.apache.felix.http.base.internal.handler.ServletHandler;
+import org.apache.felix.http.base.internal.context.ServletContextManager;
+import org.apache.felix.http.base.internal.handler.*;
 import org.apache.felix.http.base.internal.logger.SystemLogger;
+import org.osgi.framework.Bundle;
 import org.osgi.service.http.HttpContext;
 import org.osgi.service.http.NamespaceException;
-import org.osgi.framework.Bundle;
-import javax.servlet.Filter;
-import javax.servlet.ServletException;
-import javax.servlet.Servlet;
-import javax.servlet.ServletContext;
-import java.util.Dictionary;
-import java.util.HashSet;
 
 public final class HttpServiceImpl
     implements ExtHttpService
@@ -63,6 +60,9 @@ public final class HttpServiceImpl
     public void registerFilter(Filter filter, String pattern, Dictionary 
initParams, int ranking, HttpContext context)
         throws ServletException
     {
+        if (filter == null ) {
+            throw new IllegalArgumentException("Filter must not be null");
+        }
         FilterHandler handler = new FilterHandler(getServletContext(context), 
filter, pattern, ranking);
         handler.setInitParams(initParams);
         this.handlerRegistry.addFilter(handler);
@@ -88,10 +88,12 @@ public final class HttpServiceImpl
     public void registerServlet(String alias, Servlet servlet, Dictionary 
initParams, HttpContext context)
         throws ServletException, NamespaceException
     {
+        if (servlet == null ) {
+            throw new IllegalArgumentException("Servlet must not be null");
+        }
         if (!isAliasValid(alias)) {
             throw new IllegalArgumentException( "Malformed servlet alias [" + 
alias + "]");
         }
-        
         ServletHandler handler = new 
ServletHandler(getServletContext(context), servlet, alias);
         handler.setInitParams(initParams);
         this.handlerRegistry.addServlet(handler);
@@ -104,7 +106,7 @@ public final class HttpServiceImpl
         if (!isNameValid(name)) {
             throw new IllegalArgumentException( "Malformed resource name [" + 
name + "]");
         }
-        
+
         try {
             Servlet servlet = new ResourceServlet(name);
             registerServlet(alias, servlet, null, context);


Reply via email to