SlideShare ist ein Scribd-Unternehmen logo
1 von 19
JSF/ICEfaces in
Action
Lukasz Plotnicki
RANDI2 Core Development Team
<lp@randi2.de>




                           28. November 2008
                                   Day of Code
Day of Code



       Java Server Faces
            Ein Standard, der die genauen Anforderungen an ein
            Web-Framework spezifiziert
                Warum?
                    Standardisierung der           Lösung von Aspekten
                    heterogenen Landschaft         wie:
                    der Web-Frameworks
                                                     Two-Way Binding
                                                     Form Handling
                                                     Controller Logic




                                             [1]


www.randi2.de                                                                      2
Day of Code



       Java Server Faces
            Ein Standard, der die genauen Anforderungen an ein
            Web-Framework spezifiziert
                Wie?                                   Erstellung eines
                       Aufbauend auf den
                                                       Frameworks, das...
                       existierenden rendering
                       Technologien                       auf Komponenten basiert
                                                          Event-gesteuert ist
                                                          trotz der Natur des HTTP
                                                          Protokolls zustandbehaftet
                                                          ist (stateful)
                                                          und die Erstellung von
                                                          interactiven
                                                          Webapplikationen
                                                          ermöglicht

                                                 [1]


www.randi2.de                                                                                    3
Day of Code



       JSF & RANDI2

            Warum?
                JSF ist eine im Java-Raum etablierte Technologie
                Weltweit operierende Unternehmen setzen auf JSF
                bei der Realisierung verschiedenster Anwendungen
                JSF als JSR Standard sichert ständige
                Weiterentwicklung und breite Unterstützung durch
                die Vendors


www.randi2.de                                                            4
Day of Code



       ICEfaces & RANDI2

            Eine Implementierung des JSF Standards, die ...
                „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to
                easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured
                product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2]




www.randi2.de                                                                                                                      5
Day of Code



       ICEfaces & RANDI2

            Eine Implementierung des JSF Standards, die ...
                „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to
                easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured
                product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2]


                Ajax wirklich „out of the box“
                Ajax-Push Technologie




www.randi2.de                                                                                                                      6
Day of Code



       ICEfaces & RANDI2

            Eine Implementierung des JSF Standards, die ...
                „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to
                easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured
                product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2]


                Ajax wirklich „out of the box“            Als JSF Implementierung ein Teil
                                                        der Java EE Umgebung
                Ajax-Push Technologie




www.randi2.de                                                                                                                      7
Day of Code



       ICEfaces & RANDI2

            Eine Implementierung des JSF Standards, die ...
                  „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to
                  easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured
                  product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2]


                  Ajax wirklich „out of the box“            Als JSF Implementierung ein Teil
                                                          der Java EE Umgebung
                  Ajax-Push Technologie

                   Gut aussehende und
                ergonomische Oberfläche




www.randi2.de                                                                                                                        8
Day of Code



       ICEfaces & RANDI2

            Eine Implementierung des JSF Standards, die ...
                  „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to
                  easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured
                  product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2]


                  Ajax wirklich „out of the box“            Als JSF Implementierung ein Teil
                                                          der Java EE Umgebung
                  Ajax-Push Technologie

                                                             ICEfaces ist ein Open Source
                   Gut aussehende und
                ergonomische Oberfläche                    Projekt unter Mozilla Public License
                                                             Große Developer Community
                                                          (aktuell 32.000 registrierte
                                                          Entwickler)




www.randi2.de                                                                                                                        9
Day of Code


       So... how does it work?
                                          register.jspx

            Basics

         LoginHandler




                        faces-config.xml




www.randi2.de                                                      10
Day of Code


       So... how does it work?
                        register.jspx

            Basics

         LoginHandler




                                        faces-config.xml




www.randi2.de                                                      11
Day of Code


       So... how does it work?
         faces-config.xml   register.jspx

            Basics

         LoginHandler




www.randi2.de                                       12
Day of Code


       So... how does it work?
       LoginHandler
                                        register.jspx

            Basics




                      faces-config.xml




www.randi2.de                                                    13
Day of Code



       A single page




                              [3]


www.randi2.de                       14
Day of Code



       JSF Lifecycle
            Was passiert, wenn ein Request ankommt...




                                                        [1]



www.randi2.de                                                    15
Day of Code



       JSF/ICEfaces in RANDI2




www.randi2.de                            16
Day of Code



       JSF/ICEfaces in RANDI2
                                inc/version.jspx
                                                      inc/header.jspx




                inc/menu.jspx
                                                   inc/panels/XX.jspx




                                                    randi2.jspx
www.randi2.de                                                                    17
Day of Code



       JSF/ICEfaces in RANDI2
            Interessante Lösungen
                Die komplette Validierung ist in den Model Klassen
                zentral mit Hilfe von Hibernate realisiert und an die
                Oberfläche mit einem RANDI2 Validator angebunden
                Generische Erstellung der Oberfläche bei der
                Studien-Konfiguration
            Zukunft
                Integration von Ajax-Push
                Oberfläche für iPhone & Co.
www.randi2.de                                                            18
Day of Code



       Quellen
            [1] „Basics and concepts of Java Server Faces“ Martin
            Marinschek (http://tinyurl.com/6pv4m3)
            [2] www.icefaces.org - die offizielle ICEfaces Webseite
            [3] http://component-showcase.icefaces.org/



                    Bei Fragen oder Anregungen:
                            lp@randi2.de


www.randi2.de                                                          19

Weitere ähnliche Inhalte

Andere mochten auch

Planeta tierra
Planeta tierraPlaneta tierra
Planeta tierratrstrs
 
Manipen internet
Manipen internetManipen internet
Manipen internetpampiali
 
Word alejandro alberto
Word alejandro albertoWord alejandro alberto
Word alejandro albertoAlberto Bl
 
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper AT Internet
 

Andere mochten auch (9)

Planeta tierra
Planeta tierraPlaneta tierra
Planeta tierra
 
Semillero agustino 2011
Semillero agustino 2011Semillero agustino 2011
Semillero agustino 2011
 
Manipen internet
Manipen internetManipen internet
Manipen internet
 
Tarea 8
Tarea 8Tarea 8
Tarea 8
 
Manual dropbox
Manual dropboxManual dropbox
Manual dropbox
 
Word alejandro alberto
Word alejandro albertoWord alejandro alberto
Word alejandro alberto
 
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper
Conferencia de AT Internet en el eShow de Barcelona 2013 con Supertruper
 
Buscadores
BuscadoresBuscadores
Buscadores
 
On connection lost
On connection lostOn connection lost
On connection lost
 

Ähnlich wie IceFaces In Randi2 Action

Die besten 10 JavaScript Frameworks für moderne Web-Apps
Die besten 10 JavaScript Frameworks für moderne Web-AppsDie besten 10 JavaScript Frameworks für moderne Web-Apps
Die besten 10 JavaScript Frameworks für moderne Web-AppsDieter Ziegler
 
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für Healthcare
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für HealthcareArtikel eHealthcare Kompendium: Service Orientierte Architekturen für Healthcare
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für HealthcarePeter Affolter
 
iOS Apps mit Webtechnologien erstellen
iOS Apps mit Webtechnologien erstelleniOS Apps mit Webtechnologien erstellen
iOS Apps mit Webtechnologien erstellenMichael Kühnel
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferayinovex GmbH
 
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...Lukas Eder
 
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellen
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellenLightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellen
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellenAlexander Galkin
 
Bernd Beilke und Torsten Hoffmann zu Mashups
Bernd Beilke und Torsten Hoffmann zu MashupsBernd Beilke und Torsten Hoffmann zu Mashups
Bernd Beilke und Torsten Hoffmann zu MashupsIBM Lotus
 
Java EE Microservices ohne Server
Java EE Microservices ohne ServerJava EE Microservices ohne Server
Java EE Microservices ohne Servergedoplan
 
JavaScript-Erweiterungen für UI und UX
JavaScript-Erweiterungen für UI und UXJavaScript-Erweiterungen für UI und UX
JavaScript-Erweiterungen für UI und UXKai Donato
 
Desktop Containers 12: Next Generation of ZENworks Application Virtualization
Desktop Containers 12: Next Generation of ZENworks Application VirtualizationDesktop Containers 12: Next Generation of ZENworks Application Virtualization
Desktop Containers 12: Next Generation of ZENworks Application VirtualizationGWAVA
 
Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007smancke
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systemerdmeyer
 
Enterprise UI
Enterprise UIEnterprise UI
Enterprise UIgedoplan
 
Web-GUIs mit Vaadin
 Web-GUIs mit Vaadin Web-GUIs mit Vaadin
Web-GUIs mit Vaadingedoplan
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Niels de Bruijn
 

Ähnlich wie IceFaces In Randi2 Action (20)

Die besten 10 JavaScript Frameworks für moderne Web-Apps
Die besten 10 JavaScript Frameworks für moderne Web-AppsDie besten 10 JavaScript Frameworks für moderne Web-Apps
Die besten 10 JavaScript Frameworks für moderne Web-Apps
 
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für Healthcare
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für HealthcareArtikel eHealthcare Kompendium: Service Orientierte Architekturen für Healthcare
Artikel eHealthcare Kompendium: Service Orientierte Architekturen für Healthcare
 
Die Java Plattform Strategie
Die Java Plattform StrategieDie Java Plattform Strategie
Die Java Plattform Strategie
 
iOS Apps mit Webtechnologien erstellen
iOS Apps mit Webtechnologien erstelleniOS Apps mit Webtechnologien erstellen
iOS Apps mit Webtechnologien erstellen
 
Portale 2.0 mit Liferay
Portale 2.0 mit LiferayPortale 2.0 mit Liferay
Portale 2.0 mit Liferay
 
OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021
 
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...
iJUG Java Aktuell [Februar 2015] Lukas Eder - jOOQ - ein alternativer Weg mit...
 
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellen
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellenLightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellen
LightSwitch und SQL Azure: Datengetriebene Anwendungen in Rekordzeit erstellen
 
Bernd Beilke und Torsten Hoffmann zu Mashups
Bernd Beilke und Torsten Hoffmann zu MashupsBernd Beilke und Torsten Hoffmann zu Mashups
Bernd Beilke und Torsten Hoffmann zu Mashups
 
Java EE Microservices ohne Server
Java EE Microservices ohne ServerJava EE Microservices ohne Server
Java EE Microservices ohne Server
 
JavaScript-Erweiterungen für UI und UX
JavaScript-Erweiterungen für UI und UXJavaScript-Erweiterungen für UI und UX
JavaScript-Erweiterungen für UI und UX
 
profil_2017
profil_2017profil_2017
profil_2017
 
Desktop Containers 12: Next Generation of ZENworks Application Virtualization
Desktop Containers 12: Next Generation of ZENworks Application VirtualizationDesktop Containers 12: Next Generation of ZENworks Application Virtualization
Desktop Containers 12: Next Generation of ZENworks Application Virtualization
 
Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007Jalimo Slides Linuxtag2007
Jalimo Slides Linuxtag2007
 
Java für eingebettete Systeme
Java für eingebettete SystemeJava für eingebettete Systeme
Java für eingebettete Systeme
 
Enterprise UI
Enterprise UIEnterprise UI
Enterprise UI
 
3. Night of the pack
3. Night of the pack3. Night of the pack
3. Night of the pack
 
Net@night asp.net mvc
Net@night asp.net mvcNet@night asp.net mvc
Net@night asp.net mvc
 
Web-GUIs mit Vaadin
 Web-GUIs mit Vaadin Web-GUIs mit Vaadin
Web-GUIs mit Vaadin
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 

IceFaces In Randi2 Action

  • 1. JSF/ICEfaces in Action Lukasz Plotnicki RANDI2 Core Development Team <lp@randi2.de> 28. November 2008 Day of Code
  • 2. Day of Code Java Server Faces Ein Standard, der die genauen Anforderungen an ein Web-Framework spezifiziert Warum? Standardisierung der Lösung von Aspekten heterogenen Landschaft wie: der Web-Frameworks Two-Way Binding Form Handling Controller Logic [1] www.randi2.de 2
  • 3. Day of Code Java Server Faces Ein Standard, der die genauen Anforderungen an ein Web-Framework spezifiziert Wie? Erstellung eines Aufbauend auf den Frameworks, das... existierenden rendering Technologien auf Komponenten basiert Event-gesteuert ist trotz der Natur des HTTP Protokolls zustandbehaftet ist (stateful) und die Erstellung von interactiven Webapplikationen ermöglicht [1] www.randi2.de 3
  • 4. Day of Code JSF & RANDI2 Warum? JSF ist eine im Java-Raum etablierte Technologie Weltweit operierende Unternehmen setzen auf JSF bei der Realisierung verschiedenster Anwendungen JSF als JSR Standard sichert ständige Weiterentwicklung und breite Unterstützung durch die Vendors www.randi2.de 4
  • 5. Day of Code ICEfaces & RANDI2 Eine Implementierung des JSF Standards, die ... „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2] www.randi2.de 5
  • 6. Day of Code ICEfaces & RANDI2 Eine Implementierung des JSF Standards, die ... „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2] Ajax wirklich „out of the box“ Ajax-Push Technologie www.randi2.de 6
  • 7. Day of Code ICEfaces & RANDI2 Eine Implementierung des JSF Standards, die ... „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2] Ajax wirklich „out of the box“ Als JSF Implementierung ein Teil der Java EE Umgebung Ajax-Push Technologie www.randi2.de 7
  • 8. Day of Code ICEfaces & RANDI2 Eine Implementierung des JSF Standards, die ... „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2] Ajax wirklich „out of the box“ Als JSF Implementierung ein Teil der Java EE Umgebung Ajax-Push Technologie Gut aussehende und ergonomische Oberfläche www.randi2.de 8
  • 9. Day of Code ICEfaces & RANDI2 Eine Implementierung des JSF Standards, die ... „ICEfaces is an integrated Ajax application framework that enables Java EE application developers to easily create and deploy thin-client rich Internet applications (RIA) in pure Java. ICEfaces is a fully featured product that enterprise developers can use to develop new or existing Java EE applications at no cost.“ [2] Ajax wirklich „out of the box“ Als JSF Implementierung ein Teil der Java EE Umgebung Ajax-Push Technologie ICEfaces ist ein Open Source Gut aussehende und ergonomische Oberfläche Projekt unter Mozilla Public License Große Developer Community (aktuell 32.000 registrierte Entwickler) www.randi2.de 9
  • 10. Day of Code So... how does it work? register.jspx Basics LoginHandler faces-config.xml www.randi2.de 10
  • 11. Day of Code So... how does it work? register.jspx Basics LoginHandler faces-config.xml www.randi2.de 11
  • 12. Day of Code So... how does it work? faces-config.xml register.jspx Basics LoginHandler www.randi2.de 12
  • 13. Day of Code So... how does it work? LoginHandler register.jspx Basics faces-config.xml www.randi2.de 13
  • 14. Day of Code A single page [3] www.randi2.de 14
  • 15. Day of Code JSF Lifecycle Was passiert, wenn ein Request ankommt... [1] www.randi2.de 15
  • 16. Day of Code JSF/ICEfaces in RANDI2 www.randi2.de 16
  • 17. Day of Code JSF/ICEfaces in RANDI2 inc/version.jspx inc/header.jspx inc/menu.jspx inc/panels/XX.jspx randi2.jspx www.randi2.de 17
  • 18. Day of Code JSF/ICEfaces in RANDI2 Interessante Lösungen Die komplette Validierung ist in den Model Klassen zentral mit Hilfe von Hibernate realisiert und an die Oberfläche mit einem RANDI2 Validator angebunden Generische Erstellung der Oberfläche bei der Studien-Konfiguration Zukunft Integration von Ajax-Push Oberfläche für iPhone & Co. www.randi2.de 18
  • 19. Day of Code Quellen [1] „Basics and concepts of Java Server Faces“ Martin Marinschek (http://tinyurl.com/6pv4m3) [2] www.icefaces.org - die offizielle ICEfaces Webseite [3] http://component-showcase.icefaces.org/ Bei Fragen oder Anregungen: lp@randi2.de www.randi2.de 19