I'm pretty new to JSF and reading some of the stack-answers like this one, I faced with the concept of view build time. Consider the JSF lifecycle scheme:
As you can see, there's no phase called view build time. Maybe it means the same as Restore view phase? From the JavaEE tutorial
During this phase, the JavaServer Faces implementation builds the view of the page [...]
The view build time is not a phase. The view build time is that moment when the physical UIViewRoot
instance and all of its children is built based on the view declaration, which is usally defined in XHTML or JSP files.
The view build time moment is not restricted to a specific JSF lifecycle phase. It can technically happen in any phase. By default, it's indeed usually executed during the restore view phase, but it can also happen during the render response phase, specifically when the request is a GET request, or when navigation has taken place during a POST request. Developers can also programmatically build the view via ViewDeclarationLanguage#buildView()
, or implicitly force the JSF implementation to do that via FacesContext#setViewRoot()
, when navigation isn't sufficient for the specific task.
The restore view phase just restores the JSF state into the view. I.e. it sets the component attributes with values as they were during the previous request on the same view. This way JSF knows exactly how the view looked like at the moment the form was being presented to the enduser and can among others do some safeguards against tampered requests.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With