Lab 6 replaces the CustomerController servlet with the ustomerDetails.xhtml JSF page.
Existing JSP pages need to be adapted to call the JSF page. Here's how you call a JSF page from a JSP or plain HTML page and pass a parameter to it.
- Change the AllCustomers.jsp page to call the JSF page.
- Existing call to the servlet
- New call to the JSF page
- Change the JSF backing bean to receive parameters and call code when it is created by a GET request.
- Receive a GET parameter in an attribute
- Call a method when the bean is created. The method looks up data using the value stored in the attribute in the previous step.
1 | < a href="CustomerController?customerIdentity=<%= customers[i].getId()%>&submit=Get Customer"> |
1 | < a href="CustomerDetails.xhtml?customerIdentity=<%= customers[i].getId()%>"> |
1 2 3 4 5 6 7 8 | @ManagedBean (name= "customerDetails" ) @RequestScoped public class CustomerManagedBean { @ManagedProperty ( "#{param.customerIdentity}" ) private String customerId = "" ; ... } |
1 2 3 4 5 6 | @PostConstruct public void initCustomer() { if (customerId != null && customerId.length()!= 0 ){ retrieveCustomer(); } } |
No comments:
Post a Comment