13 2 JSF Web 1 MVC HTML JSP Velocity Java
14 JSF UI PC GUI JSF Web 2.1 JSF JSF Web FORM FORM 2-1 JSF role, JSF JSF
15 Web JSF JSF Web Macromedia JSF JSF JSF 2.2 / Subscriber package com.mycompany.newsservice.models; public class Subscriber { private String emailaddr; private String[] subscriptionids; public String getemailaddr() { return emailaddr; public void setemailaddr(string emailaddr) { this.emailaddr = emailaddr; public String[] getsubscriptionids() { return subscriptionids; public void setsubscriptionids(string[] subscriptionids) { this.subscriptionids = subscriptionids; Subscriber JavaBeans JavaBeans get
16 set JSF UI Subscriber Subscriber System.out public void save() { StringBuffer subscriptions = new StringBuffer(); if (subscriptionids!= null) { for (int i = 0; i < subscriptionids.length; i++) { subscriptions.append(subscriptionids[i]).append(" "); System.out.println("Subscriber Email Address: " + emailaddress + "\nsubscriptions: " + subscriptions); JSF 2.3 JSF UI 2-2 Subscriber SubscriberHandler JSF UIComponentBase JSF UI 2-2 UIInput UISelectMany JSF UI JSF
17 Renderer UIComponentBase ActionListener UICommand UIOutput savesubscriber SubscriberHandler emailaddr UIintput save Subscriber subscriptionids UISelectMany UIInput emailaddr JSF 2-2 UIInput UISelectMany Subscriber emailaddr subscripsionids value binding,, JSF method binding,, JSF 2-2 UICommand 20 JSF
18 2-1 action ActionEvent ActionListener ActionListener JSF SubscriberHandler package com.mycompany.newsservice.handlers; import com.mycompany.newsservice.models.subscriber; public class SubscriberHandler { private Subscriber subscriber; public void setsubscriber(subscriber subscriber) { this.subscriber = subscriber; public String savesubscriber() { subscriber.save(); return "success"; SubscriberHandler Subscriber set() Save ActionEvent savesubscri ber() set() save() "success" JSF save() void SubscriberHandler savesubscriber() save() String JSF JSF
19 JSF Subscriber SubscriberHanlder faces-config.xml JSF <faces-config> <managed-bean> <managed-bean-name>subscr</managed-bean-name> <managed-bean-class> com.mycompany.newsservice.models.subscriber </managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> <managed-bean> <managed-bean-name>subscrhandler</managed-bean-name> <managed-bean-class> com.mycompany.newsservice.handlers.subscriberhandler </managed-bean-class> <managed-bean-scope>request</managed-bean-scope> <managed-property> <property-name>subscriber</property-name> <value>#{subscr</value> </managed-property> </managed-bean> </faces-config> XML <managed-bean> <managed-bean> Subscriber subscr <managed-bean> SubscriberHandler subscrhandler <managed-property> Subscriber
20 subscr SubscriberHandler Subscriber 2.4 Java UI UI JSF JSF JSF 1.0 JSP JSP JSF JSF JSP JSF UI JSP JSP JSF JSP JSF JSP JSP JSF 2-1 JSF JSP <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> <html> <head> <title>newsletter Subscription</title> </head> <body> <f:view>
21 <h:form> <table> <tr> <td>email Address:</td> <td> <h:inputtext value="#{subscr.emailaddr" /> </td> </tr> <td> <td>news Letters:</td> <td> <h:selectmanycheckbox value="#{subscr.subscriptionids"> <f:selectitem itemvalue="1" itemlabel="jsf News" /> <f:selectitem itemvalue="2" itemlabel="it Industry News" /> <f:selectitem itemvalue="3" itemlabel="company News" /> </h:selectmanycheckbox> </td> </tr> </table> <h:commandbutton value="save" action="#{subscrhandler.savesubscriber" /> </h:form> </f:view> </body> </html> 2-1 JSP JSP 4 JSP JSF h HTML JSF UI h HTML f UI f Faces HTML JSF UI JSF <f:view> <h:form> JSF HTML FORM HTML JSF <h:inputtext> value subscr emailaddr <h:selectmanycheckbox> <f:selectitem> <h:selectmanycheckbox> value subscr
22 email:uiinput value: Object = reference 1 <h:inputtext value="#{subscr.emailaddr"/> 2 3 faces-config.xml subscr:subscriber emailaddr:string = "hans@home" 4 <managed-bean> <manged-bean-name> subsr </manged-bean-name> </managed-bean> Subscriber subscriptionids <h:commandbutton> Save action subscrhandler SubscriberHand ler savesubscriber() #{.. JSP 2-3 JSP JSF faces-config.xml <h:inputtext> UIInput faces-config.xml JSF HTML <input> JSF JSF JSF System.out Subscriber save(), 16 JSF JSP
23 JSP JSF JSF