The FacesContext is not a durable data structure. It is created by the FacesServlet when a JSF URL request is received by the server and used to guide the lifecycle processing of that request. Once the request has been processed and the response has been sent back, it is destroyed. Therefore, the only servlet that can access the FacesContext is the FacesServlet itself. Likewise, since each request gets its own FacesContext, even code running under the FacesServlet cannot cache the FacesContext for later use. Once the current request is completed, the current FacesContext is useless.
Customer surveys are for companies who didn't pay proper attention to begin with.
subject: How to get FacesContext.getCurrentInstance() from a servlet