Introduction to JavaServer Faces, Part 1 - Defining Taglib Directives
(Page 9 of 9 )
First, you define two taglib directives to use the two JSF tag libraries: HTML and Core. The tag library descriptors for these two libraries can be found in the jsf-ri.jar file, so you do not need to worry about them. The prefix for the HTML tag library is h, and the prefix for the Core tag library is f.
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %><%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>Next are the JSF controls. Note that JSF controls must be enclosed in the opening and closing elements:
<f:use_faces>
...
</f:use_faces>
Inside these elements, you have a form:
</f:use_faces><f:use_faces> <h:form formName=''addForm">
<h:form formName="addForm">...
</h:form>
Nested inside the form are two input_number controls, an output_number control, and a command_button control.
<br/>First Number:
<h:input_number id="firstNumber"
valueRef="numberBean.firstNumber"/>
<br/>Second Number:
<h:input_number id="secondNumber"
valueRef="numberBean.secondNumber"/>
<br/>Result:
<h:output_number id="output" valueRef="NumberBean.result"/>
<br/>
<h:command_button id="submitButton" label="Add"
commandName="submit" >
<f:action_listener type="ch02a.MyActionListener" />
</h:command_button>
Notice the ActionListener for the command button.

Figure 5 The component tree of the adder.jsp page
Conceptually, the component tree for this JSP page is depicted in Figure 5, with the root omitted. The main component is the form, and the form has four child components.
Remember: This is part one of the second chapter of JavaServer Faces Programming, by Budi Kurniawan (McGraw-Hill/Osborne, ISBN 0-07-222983). Stay tuned for part 2 of "Introduction to JavaServer Faces," where we learn about JSP, JavaBeans, and Model 2. Buy this book! |
| DISCLAIMER: The content provided in this article is not warranted or guaranteed by Developer Shed, Inc. The content provided is intended for entertainment and/or educational purposes in order to introduce to the reader key ideas, concepts, and/or product reviews. As such it is incumbent upon the reader to employ real-world tactics for security and implementation of best practices. We are not liable for any negative consequences that may result from implementing any information covered in our articles or tutorials. If this is a hardware review, it is not recommended to open and/or modify your hardware. |