possible NPE
diff --git a/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultFacesConfigurationProviderFactory.java b/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultFacesConfigurationProviderFactory.java
index d259ede..ac9c91f 100644
--- a/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultFacesConfigurationProviderFactory.java
+++ b/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultFacesConfigurationProviderFactory.java
@@ -73,13 +73,9 @@
                 {
                     returnValue = resolveFacesConfigurationProviderFromService(extContext);
                 }
-                externalContext.getApplicationMap().put(FACES_CONFIGURATION_PROVIDER_INSTANCE_KEY, returnValue);
             }
-            catch (ClassNotFoundException | NoClassDefFoundError e)
-            {
-                // ignore
-            }
-            catch (InstantiationException | IllegalAccessException | InvocationTargetException e)
+            catch (ClassNotFoundException | NoClassDefFoundError | InstantiationException | IllegalAccessException
+                    | InvocationTargetException e)
             {
                 getLogger().log(Level.SEVERE, "", e);
             }
@@ -88,6 +84,13 @@
                 throw new FacesException(e);
             }
         }
+        
+        if (returnValue == null)
+        {
+            returnValue = new DefaultFacesConfigurationProvider();
+        }
+
+        externalContext.getApplicationMap().put(FACES_CONFIGURATION_PROVIDER_INSTANCE_KEY, returnValue);
 
         return returnValue;
     }
diff --git a/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultWebConfigProviderFactory.java b/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultWebConfigProviderFactory.java
index fe4e171..a951530 100644
--- a/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultWebConfigProviderFactory.java
+++ b/impl/src/main/java/org/apache/myfaces/spi/impl/DefaultWebConfigProviderFactory.java
@@ -72,11 +72,8 @@
                 returnValue = resolveWebXmlProviderFromService(extContext);
             }
         }
-        catch (ClassNotFoundException | NoClassDefFoundError e)
-        {
-            // ignore
-        }
-        catch (InstantiationException | IllegalAccessException | InvocationTargetException e)
+        catch (ClassNotFoundException | NoClassDefFoundError | InstantiationException | IllegalAccessException
+                | InvocationTargetException e)
         {
             getLogger().log(Level.SEVERE, "", e);
         }
@@ -85,6 +82,11 @@
             throw new FacesException(e);
         }
 
+        if (returnValue == null)
+        {
+            returnValue = new DefaultWebConfigProvider();
+        }
+ 
         return returnValue;
     }