Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Java EE 
Full Stack for Business Applications 
 Java Server Faces
Referent: MATTHIAS REINING 
Technical Manager Insurance at RGI Deutschland GmbH 
blog: http://blog.matthias-reining.com 
t...
JAVA SERVER FACES
DAS PROGRAMM 
 Die Spec 
 Idee, Historie 
 Der App Server 
 Containerkonzept 
 Paketierung (JAR, WAR, EAR) 
 Marktüb...
BESTANDSAUFNAHME 
Welche Java UI Frameworks sind bekannt? 
 Struts? 
 Wicket? 
 Vaadin? 
 GWT? 
 Spring Web MVC? 
 J...
Wieso werden neben Servlets & JSPs 
noch andere Frameworks genutzt? 
Komfortables Handling von 
 Templates 
 HTML Formul...
JAVA SERVER FACES
What is JSF? 
JavaServer Faces (JSF) is a UI component based Java Web 
application framework. JSF is serverbased, e.g. the...
Java Server Faces 
Tutorials / Nachschlagewerke 
 http://docs.oracle.com/javaee/7/tutorial/doc/jsf-intro.htm 
 http://js...
JSF - Spec 
Reference Implementation: Mojarra 
Alternative: MyFaces 
Konkrete Implementierung hängt vom Application Server...
MODEL – VIEW – CONTROLLER 
Designpattern
Java Server Faces 
MODEL  Java POJO 
VIEW  Faclet 
CONTROLLER  Managed Bean (Backing Bean)
POJO 
Model 
Plain Old Java Object
FACLETS 
View 
XHTML Files mit speziellen Tags <h:…>
MANAGED BEAN 
Controller 
Synonym „Backing Bean“ 
@ManagedBean  verutlich deprecated ab Java EE 8 
(http://stackoverflow....
JSF Scopes 
@RequestScope (javax.faces.bean.RequestScoped) 
@SessionScope (javax.faces.bean.SessionScoped) 
@Applicatio...
UI KOMPONENTEN IN EINEM FACELET 
JSF-HTML-UI-Komponenten 
xmlns:h="http://xmlns.jcp.org/jsf/html 
Tags zur grafischen Dars...
TEMPLATING MIT FACELETS 
 <ui:insert> 
„Platzhalter“ in einem Template 
 <ui:composition> 
Verbindung zum Template 
 <u...
JSF LIFECYCLE 
1. RESTORE_VIEW 
2. APPLY_REQUEST_VALUES 
3. PROCESS_VALIDATIONS 
4. UPDATE_MODEL_VALUES 
5. INVOKE_APPLICA...
JSF Messages 
FacesMessage m = new FacesMessage("läuft.."); 
FacesContext.getCurrentInstance().addMessage("testMessage", m...
i18n 
Internationalization
Validierung 
<f:validate…
JSF Events & Listener
JSF Komponenten 
Bibliotheken 
Wichtig für Geschäftsanwendungen 
Allerdings nicht teil der Java EE Spezifikation
JSF Komponenten Bibliotheken 
Primefaces 
Rich Faces 
Ice Faces 
My Faces
http://primefaces.org/
Aber… 
Wieso gibt es dann neben JSF noch andere Webframeworks?
Was macht die Konkurrenz? 
https://vaadin.com/demo 
http://samples.gwtproject.org/samples/Showca 
se/Showcase.html
Stirbt JSF?
Nächste SlideShare
Wird geladen in …5
×

Java EE - FHWS 2014 - 3 JSF

560 Aufrufe

Veröffentlicht am

Java EE - FHWS 2014 - 3 JSF

Veröffentlicht in: Software
  • Als Erste(r) kommentieren

Java EE - FHWS 2014 - 3 JSF

  1. 1. Java EE Full Stack for Business Applications  Java Server Faces
  2. 2. Referent: MATTHIAS REINING Technical Manager Insurance at RGI Deutschland GmbH blog: http://blog.matthias-reining.com twitter: https://twitter.com/MatthiasReining about.me: http://about.me/matthiasreining
  3. 3. JAVA SERVER FACES
  4. 4. DAS PROGRAMM  Die Spec  Idee, Historie  Der App Server  Containerkonzept  Paketierung (JAR, WAR, EAR)  Marktüberblick  Das Projekt  Entwicklung eines Beispielprojektes  IDE Settings, Oberflächen (Servlets, JSF), Business Logic (EJB), Persistence (JPA), Java EE Patterns (CDI), Web Services (JAX-RS)  Die Produktion  Buildmanagement (maven, Jenkins)  Deployment einer Java EE Anwendung in der Cloud bei einem PaaS Anbieter
  5. 5. BESTANDSAUFNAHME Welche Java UI Frameworks sind bekannt?  Struts?  Wicket?  Vaadin?  GWT?  Spring Web MVC?  JSF?
  6. 6. Wieso werden neben Servlets & JSPs noch andere Frameworks genutzt? Komfortables Handling von  Templates  HTML Formulare  Komponenten  Wartung  …
  7. 7. JAVA SERVER FACES
  8. 8. What is JSF? JavaServer Faces (JSF) is a UI component based Java Web application framework. JSF is serverbased, e.g. the JSF UI components and their state are represented on the server with a defined life cycle of the UI components. JSF is part of the Java EE standard. [Quelle: http://docs.oracle.com/javaee/7/firstcup/doc/java-ee001.htm#GKHOY]
  9. 9. Java Server Faces Tutorials / Nachschlagewerke  http://docs.oracle.com/javaee/7/tutorial/doc/jsf-intro.htm  http://jsfatwork.irian.at/
  10. 10. JSF - Spec Reference Implementation: Mojarra Alternative: MyFaces Konkrete Implementierung hängt vom Application Server ab!
  11. 11. MODEL – VIEW – CONTROLLER Designpattern
  12. 12. Java Server Faces MODEL  Java POJO VIEW  Faclet CONTROLLER  Managed Bean (Backing Bean)
  13. 13. POJO Model Plain Old Java Object
  14. 14. FACLETS View XHTML Files mit speziellen Tags <h:…>
  15. 15. MANAGED BEAN Controller Synonym „Backing Bean“ @ManagedBean  verutlich deprecated ab Java EE 8 (http://stackoverflow.com/questions/4347374/backing-beans-managedbean-or-cdi-beans- named)  @Named (siehe später CDI)
  16. 16. JSF Scopes @RequestScope (javax.faces.bean.RequestScoped) @SessionScope (javax.faces.bean.SessionScoped) @ApplicationScope (javax.faces.bean.ApplicationScoped) @ViewScope (javax.faces.bean.ViewScoped) @CustomScope (javax.faces.bean.CustomScoped) @NoneScope (javax.faces.bean.NoneScoped)
  17. 17. UI KOMPONENTEN IN EINEM FACELET JSF-HTML-UI-Komponenten xmlns:h="http://xmlns.jcp.org/jsf/html Tags zur grafischen Darstellung der Benutzeroberfläche JSF-Core-UI-Komponenten xmlns:f="http://xmlns.jcp.org/jsf/core" Tags, die unabhängig von der Darstellung sind. Beispielsweise gehören hierzu die Konvertierung und die Validierung der Geschäftsdaten oder auch die ActionListener. JSF-Templating xmlns:ui="http://xmlns.jcp.org/jsf/facelets" Tags für das Templating [Quelle: Professionell entwickeln mit Java EE 7 – Das umfassende Handbuch, Seite 753]
  18. 18. TEMPLATING MIT FACELETS  <ui:insert> „Platzhalter“ in einem Template  <ui:composition> Verbindung zum Template  <ui:define> „Implementierung“ eines Platzhalters  <ui:include> Wiederverwendung von „Snippets“ http://www.mkyong.com/jsf2/jsf-2-templating-with-facelets-example/ http://www.oracle.com/technetwork/articles/java/facelets-454361.html
  19. 19. JSF LIFECYCLE 1. RESTORE_VIEW 2. APPLY_REQUEST_VALUES 3. PROCESS_VALIDATIONS 4. UPDATE_MODEL_VALUES 5. INVOKE_APPLICATION 6. RENDER_RESPONSE
  20. 20. JSF Messages FacesMessage m = new FacesMessage("läuft.."); FacesContext.getCurrentInstance().addMessage("testMessage", m); <h:message for="testMessage„/> Globale Message FacesContext.getCurrentInstance().addMessage(null, m); <h:messages/> <h:messages globalOnly=„true“/>
  21. 21. i18n Internationalization
  22. 22. Validierung <f:validate…
  23. 23. JSF Events & Listener
  24. 24. JSF Komponenten Bibliotheken Wichtig für Geschäftsanwendungen Allerdings nicht teil der Java EE Spezifikation
  25. 25. JSF Komponenten Bibliotheken Primefaces Rich Faces Ice Faces My Faces
  26. 26. http://primefaces.org/
  27. 27. Aber… Wieso gibt es dann neben JSF noch andere Webframeworks?
  28. 28. Was macht die Konkurrenz? https://vaadin.com/demo http://samples.gwtproject.org/samples/Showca se/Showcase.html
  29. 29. Stirbt JSF?

×