FacesContext object is created for entire application, and it handle multiple faces requests.
The FacesContext is created and destroyed on everyJSF page request. In between page requests, it doesn't exist at all.
One of the more common problems people have with JSF, in fact, is that they attempt to access the FacesContext while handling a non-JSF request such as in a servlet, non-JSF JSP or Struts Action. They fail on a NullPointerException.
JSF is not a "Master Control Program".
Customer surveys are for companies who didn't pay proper attention to begin with.