The problem seems to be that the MyFaces extension filter calls encodeURL() on the HttpServletResponse that has been wrapped by PrettyFaces. PrettyFacesWrappedResponse tries to obtain the FacesContext which fails because the request hadn’t reached the FacesServlet at this point. Thus the FacesContext is unavailable.
I think we should find some way to remove all references to the FacesContext from PrettyFacesWrappedResponse.
Do you play Magic?
Get TopDecked MTG, the #1 Magic App, built by players, for players. Free to use, forever.