Download presentation
Presentation is loading. Please wait.
Published byKaylyn Ellerd Modified over 10 years ago
1
JavaServer Faces Peter Norrhall
2
2007-02-07JavaServer Faces Internet - Möjliggöraren
3
2007-02-07JavaServer Faces Internet för användare
4
2007-02-07JavaServer Faces Internet för utvecklare Det suger!!!
5
2007-02-07JavaServer Faces Bra för konsulter € € € € € € € € € € € €
6
2007-02-07JavaServer Faces Dåligt på lång sikt
7
2007-02-07JavaServer Faces Java GUI Business Data JPA EJB 3 JavaServer Faces GWT
8
2007-02-07JavaServer Faces
9
2007-02-07JavaServer Faces Managed Beans SearchBean {... private String searchInput public String search() {... } Managed Beans Action
10
2007-02-07JavaServer Faces Managed Beans - DI
11
2007-02-07JavaServer Faces Navigering SearchBean {... String searchInput String search() {... return ”result”; } Managed Beans
12
2007-02-07JavaServer Faces Navigering
13
2007-02-07JavaServer Faces Demo
14
2007-02-07JavaServer Faces JSF - Livscykeln Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events SearchBean {... String searchInput String search() {... } Managed Beans UIViewRoot HtmlForm HtmlMessage HtmlInputText HtmlCommandButton UI Component Tree
15
2007-02-07JavaServer Faces Restore View UIViewRoot HtmlForm HtmlMessage HtmlInputText HtmlCommandButton UI Component Tree Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events
16
2007-02-07JavaServer Faces Apply Request Values UIViewRoot HtmlForm HtmlMessage HtmlInputText HtmlCommandButton UI Component Tree Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events Multi*
17
2007-02-07JavaServer Faces Process Validations SearchBean {... String searchInput String search() {... } Managed Beans UIViewRoot HtmlForm HtmlMessage HtmlInputText HtmlCommandButton UI Component Tree Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events Multi*
18
2007-02-07JavaServer Faces Update Model Values SearchBean {... String searchInput String search() {... } Managed Beans UIViewRoot HtmlForm HtmlMessage HtmlInputText HtmlCommandButton UI Component Tree Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events Multi*
19
2007-02-07JavaServer Faces Invoke Application UIViewRoot HtmlForm Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events HtmlMessage HtmlInputText HtmlCommandButton SearchBean {... List result String searchInput String search() {... } Managed BeansUI Component Tree Multi*
20
2007-02-07JavaServer Faces Render Response Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events UIViewRoot HtmlDataTable UIColumn HtmlInputText UI Component Tree UIColumn HtmlInputText UIColumn HtmlInputText SearchBean {... List result String searchInput String search() {... } Managed Beans
21
2007-02-07JavaServer Faces Nyheterna i JSF 1.2 < Jsp 2.1< Jsf 1.2
22
2007-02-07JavaServer Faces Unified EL •#{searchBean.inputString} - deferred •${searchBean.inputString} – immediate •Implicita objekt (application, cookie,...) •Operatorer (+.-,*,/,%,A?B:C,==,!=,...) •Uttryck (#{searchBean.search})
23
2007-02-07JavaServer Faces Nyheter i Jsf 1.2 - Sammanfattning •http://java.sun.com/developer/technicalArt icles/J2EE/jsf_12
24
2007-02-07JavaServer Faces Verktyg Oracle JDeveloper NetBeans Java Studio Creator Exadel Studio JBuilder SAP Developer Studio BEA Workshop IntelliJ IDEA Websphere Studio
25
2007-02-07JavaServer Faces Komponentbibliotek •JSF •MyFaces Extensions •Apache Tobago/ADF Faces (Oracle) •ICEFaces •Netadvantage for JSF •BackBase •RichFaces (Ajax4JSF)
26
2007-02-07JavaServer Faces Förändra/skapa komponenter
27
2007-02-07JavaServer Faces Förändra komponenter •Egenskaper •CSS Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events
28
2007-02-07JavaServer Faces JSF – Uttöka en komponent Restore View Apply Request Values Process Validations Update Model Values Process Events Invoke Application Render Response Process Events Process Events Process Events public void validateEmail(FacesContext context, UIComponent toValidate, Object value) { String email = (String) value; if (email.indexOf('@') == -1) { ((UIInput)toValidate).setValid(false); FacesMessage message = new FacesMessage("Invalid Email"); context.addMessage(toValidate.getClientId(context), message); } }
29
2007-02-07JavaServer Faces Skapa en komponent
30
2007-02-07JavaServer Faces JSF och Ajax •Komponentbibliotek •Sun Blueprint AJAX components •Ajax4JSF •Seam Remoting
31
2007-02-07JavaServer Faces Ajax4Jsf – a4j:support
32
2007-02-07JavaServer Faces Ajax4Jsf – CommandButton <a4j:commandButton action="#{searchBean.handleSearch}” reRender=”tblSearchResult, txtSearchTerm” value="#{bundle['search.search']}" styleClass="html-text"/>
33
2007-02-07JavaServer Faces Ajax4Jsf •
34
2007-02-07JavaServer Faces IceFaces
35
2007-02-07JavaServer Faces JSF Ramverk •Apache Shale vs JBoss Seam – Dialog Manager (Conversation) – Validation – Remoting (Ajax) – Clay (Non-Jsp) –...
36
2007-02-07JavaServer Faces JBoss Seam SearchBean {... List result String searchInput String search() {... } Managed Beans @Stateless @Name(”searchBean”) public class SearchBean implements Search{ @Out List result; @In @Out String searchInput String search() {... } EJB 3
37
2007-02-07JavaServer Faces Annoteringar – Bokmärken •A RESTful framework •@RequestParameter public class CategoryBean { @RequestParameter String catId; @Create public String getCategory() { category = em.find(Category.class, catId); }
38
2007-02-07JavaServer Faces JSF - Bokmärken category se.movlin.jsf.pagebeans.CategoryBean request catId java.lang.String #{param.catId} public class CategoryBean { private String catId; public void setCatId(String catId) { this.catId = catId; category = em.find(Category.class, catId); } }
39
2007-02-07JavaServer Faces @Annoteringar - Validering public class UserRegistrationBean { @NotNull @Email public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
40
2007-02-07JavaServer Faces Seam – Ajax Remoting @Local public interface Search { @WebRemote public String suggest(String name); } @Name(”search”) public class SearchAction implements Search { public String suggest(String name) { String suggestion = null;... return suggestion; } // get the remote Search var search = Seam.Component.getInstance(”search”); function suggest(name) { search.suggest(name, suggestCallback); } function suggestCallback(suggestion) { form.suggestion.value = suggestion; }
41
2007-02-07JavaServer Faces JBoss Seam •Fogar samman JSF och EJB 3 (Web Beans) •@Annoteringar – Ut med XML-konfig •AJAX för en bättre värld •Conversation – Stöd för tillståndsfulla multipla ”konversationer”
42
2007-02-07JavaServer Faces Seam – Web Beans •Web Beans JSR 299
43
2007-02-07JavaServer Faces Facelets
44
2007-02-07JavaServer Faces Facelets - Våga Vägra JSP!
45
2007-02-07JavaServer Faces Facelets - Mallbaserat bottom top rightcontainer template.xhtml.top{ margin: 0px; padding: 0px; height: 58px; width: 770px; font: 20px Verdana, Tahoma, Arial text-decoration-none }.right {... }.bottom {... }.container {... } template.css
46
2007-02-07JavaServer Faces...... Produktkatalog ShoppingCart/CompanyInfo (bottom) Menu (top) Branding (right) container </ui:insert catalog_template.xhtml...... category.xhtml product.xhtml
47
2007-02-07JavaServer Faces Produktkatalog catalog_template.xhtml product.xhtml
48
2007-02-07JavaServer Faces Facelets – enklare att •Skapa egna komponenter •Skapa valideringsfunktioner •Skapa ”taggar” •Skicka parametrar mellan sidor •Exadel Studio
49
2007-02-07JavaServer Faces Prestanda
50
2007-02-07JavaServer Faces State – Client vs Server Web.xml javax.faces.STATE_SAVING_METHOD client jsfsearch.jsp
51
2007-02-07JavaServer Faces Cache is King <s:cache key=”art_93682” enabled=”true”
52
2007-02-07JavaServer Faces JSF 2.0 •Web Beans JSR 299 - JBoss •Oracles JSR för att uttöka designtime stödet i GUIbyggare •http://www.jsfcentral.com/listings/A10880 ?linkhttp://www.jsfcentral.com/listings/A10880 ?link
53
2007-02-07JavaServer Faces Summering
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.