MYFACES-4333 ElContext#getFunctionMapper returns null
diff --git a/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceHandler.java b/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceHandler.java
index a7d1db9..d2ea616 100644
--- a/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceHandler.java
+++ b/impl/src/main/java/org/apache/myfaces/view/facelets/compiler/NamespaceHandler.java
@@ -21,6 +21,7 @@
import java.io.IOException;
import java.lang.reflect.Method;
import java.util.Map;
+import javax.el.ELContext;
import javax.el.ELException;
import javax.el.FunctionMapper;
@@ -30,6 +31,7 @@
import javax.faces.view.facelets.FaceletContext;
import javax.faces.view.facelets.FaceletException;
import javax.faces.view.facelets.FaceletHandler;
+import org.apache.myfaces.el.FacesELContext;
import org.apache.myfaces.view.facelets.el.CompositeFunctionMapper;
import org.apache.myfaces.view.facelets.tag.TagLibrary;
@@ -54,6 +56,11 @@
ELException
{
FunctionMapper orig = ctx.getFunctionMapper();
+ ELContext elContext = ctx.getFacesContext().getELContext();
+ if (elContext instanceof FacesELContext)
+ {
+ ((FacesELContext) elContext).setFunctionMapper(this);
+ }
ctx.setFunctionMapper(new CompositeFunctionMapper(this, orig));
try
{