You're short on details there, but the most common reason for a null Faces Context is when people attempt to reference it in JSPs and servlets.
The FacesContext does not exist as a long-term object. It is created and destroyed by the FacesServlet to handle the current http request/response process and ONLY the current http request/response process. The rest of the time it simply doesn't exist. And if you're making a non-JSF request, the FacesServlet doesn't process it, so it hasn't constructed the FacesContext.
However, you don't need the FacesContext to access managed beans. If a Managed Bean is in session or application scope, you can access it using the HttpSession.getAttribute method or the application-scope equivalent just like non-JSF attributes. There's nothing JSF-specific about how these objects are stored. Request scope objects would be the same way, except that request scope objects have such a short lifespan that they would have been destroyed before the non-JSF request was made.
Customer surveys are for companies who didn't pay proper attention to begin with.