Hi!
> perhaps the FacesCtxFactory should check that ?
Ok, It turned out to be a little bit a complicated problem.

First my use case:

* A custom filter which creates a custom facesContext
* A custom servlet which forwards to the FacesServlet
(getServletContext().getRequestDispatcher(jsfPath).forward(req, res);)
* The FacesServlet which creates a facesContext too

I tried a custom FacesContextFactory which checks if there is already a
facesContext and returns it if this is the case.
It turned out that this can not work as the
servletRequest/servletResponse objects from the filter are not the same
as the one the FacesServlet sees.
In the end the forward did not work due to the fact that the JSF system
still sees the values from the Req/Rep objects hold by the custom
FacesContext from the filter.

I solved it with a custom FacesContext factory by checking to see if
there is a previous context .... and if so ... get some of its values
(locale/messages) and put them to the new facesContext.

If we think this is of any use for someone else with such an "exotic"
setup I can add the code to the sandbox or a wiki page.

Ciao,
Mario

Reply via email to