public void apply(FaceletContext ctx, UIComponent parent) throws IOException, FacesException, FaceletException, ELException { FunctionMapper orig = ctx.getFunctionMapper(); ctx.setFunctionMapper(new CompositeFunctionMapper(this, orig)); try { next.apply(ctx, parent); } finally { ctx.setFunctionMapper(orig); } }