1.5.1 Dissecting hello.jsp
The tag library indicated by http://java.sun.com/jsf/core provides for validation, event handling and the like.
The tag library indicated by http://java.sun.com/jsf/html provides for the JSF UI components like text boxes, output labels and forms.
"The <f:view> custom tag must enclose all other Faces-related tags..."
The HtmlOutputText component, represented by the <h:outputText> tag, represents all read-only text generated by JSF. It follows that the HtmlOutputLabel component (<h:outputLabel>) encloses an <h:outputText> tag to display its data.
The HtmlMessage component (<h:message>) displays validation and conversion errors for a specific component, identified by its for attribute.
#{helloBean.numControls} is an example of JSF Expression Language (EL) used to bind backing bean data to JSF components.
"Faces will automatically search the different scopes of the web application (request, session, application) for the specified backing bean."
"JSF also supports validators, which are responsible for making sure that the user enters an acceptable value."
The HtmlPanelGrid component renders as a <table> element.
The HtmlCommandButton has action and actionListener properties that can be bound to backing bean methods. The action method takes no parameters, and returns a String which is passed to the NavigationHandler. The actionListener method takes an ActionEvent parameter and has a return type of void.
When HtmlCommandButton.immediate = true, this means that this component's value must be converted and validated during the Apply Request phase, rather than waiting for the Process Validations phase.