Up until now, I have always been using JSP to display pages. When a user request for a page such as “Add Item”, I will load all Item Category in an Array List and display them as options in select box like this:
<select name="category>
<%
ArrayList<Category> categories = (ArrayList<Category>) request.getAttribute("categories");
for (Category c : data) {
%>
<option value="<%= c.getId() %>"><%= c.getName() %></option>
<%
}
%>
</select>
From the book “JavaServer Faces 2.0, The Complete Reference”, I learnt that: “JSF enforces clean Model-View-Controller separation by disallowing the inclusion of Java code in markup pages”. Hence, I’d be very grateful if someone could show me how I can handle the above task using JSF since I cannot use Java code as I have always done anymore.
Best regards,
James Tran
Store the data you want to display in a Java list, and expose that list as a property of a backing bean. The use the appropriate JSF tag to display that property.