SlideShare a Scribd company logo
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.1
10 Tips for Java EE 7 with PrimeFaces
Mert Çalışkan & Martin Fousek
Software Architect Software Developer
at T2 Yazılım Ltd. at Oracle, NetBeans
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.3
The following is intended to outline our general product direction. It is intended
for information purposes only, and may not be incorporated into any contract.
It is not a commitment to deliver any material, code, or functionality, and should
not be relied upon in making purchasing decisions. The development, release,
and timing of any features or functionality described for Oracle’s products
remains at the sole discretion of Oracle.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.4
Agenda
 Introduction
– Java EE 7 & JavaServer Faces 2.2, PrimeFaces, NetBeans IDE
 Tour through 10 features of the JSF and PF
– Feature overview
– Samples in action
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.5
 Java EE 7 – 14 JSRs and 9 MRs, themes:
– HTML5
– Developer productivity
– Enterprise demands
 JavaServer Faces 2.2 big ticket features:
– HTML(5) Friendly Markup
– Faces Flow
– Resource Library Contract
Java EE 7 & JavaServer Faces 2.2
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.6
 Open Source Component Library for JSF 2.x
JSF 2.2 is supported with PF version 4.x
 Very Lightweight w/ Zero Configuration
 Plenty of examples in Showcase, extensive
theming, provides mobile components
 Well documented, user guides, books & etc.
 Large and active community
PrimeFaces
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.7
 Open source IDE
 Support for Java, PHP, C/C++, Groovy
 Latest features
– Java SE 7, Java EE 7 and JavaFX
– HTML(5) client side development,
CSS preprocessors, JavaSciprt frameworks
– Cordova, FindBugs, VCS improvements
– PHP 5.4 and the newest PHP frameworks
NetBeans IDE
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.8
 Sample codes to demonstrate the tips
 Mavenized projects from Java EE 7 archetype
 Repository:
github.com/marfous/j1demo-pf
Sample Codes
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.9
HTML(5) Friendly Markup
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.10
HTML(5) Friendly Markup
 New namespaces
– passthrough elements: http://xmlns.jcp.org/jsf (TagDecorator)
– passthrough attributes: http://xmlns.jcp.org/jsf/passthrough (RenderKit)
 Advantages
– Getting control over rendered Facelets
– JSF components / JavaScript components / arbitrary mixing
– Write and style pure HTML with benefits of JSF
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.11
Form with usage of HTML friendly markup: validation by
Bean Validation API with localized messages, custom Bean
Validation annotation, passthrough attributes and elements,
usage of jQuery plugin at JSF component.
01-HtmlFriendlyMarkup
https://github.com/marfous/j1demo-pf
HTML(5) Friendly Markup
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.12
Resource Libraries
Contracts
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.13
Resource Libraries Contracts
 Theme definitions across one or more web applications
 Libraries consisting of templates, insertion points, resources
 Can be bundled directly into Web Application or within .jar library
 How to choose the used one:
– there is only one option
– static or dynamic view definition
– URL based definition within faces-config
 Multi-templating
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.14
Simple Resource Libraries Contracts usage, switching
RLCs dynamically using Expression Language and
ManagedBean.
02-ResourceLibrariesContracts
https://github.com/marfous/j1demo-pf
Resource Libraries Contracts
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.15
Expression Language 3.0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.16
Expression Language 3.0
 Communication between presentation layer and application logic
 Deferred or immediate evaluation of expressions
 Sets and gets data, invokes methods
 Features
– Standalone ELProcessor
– Concatenation, semicolon and assignments operators
– Static collections
– Collection Operations (aligned with Java SE 8)
– Lambda Expressions (aligned with Java SE 8)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.17
Examples of Expression Language 3.0 features:
standalone EL Processor, operators, static fields,
collections, lambdas and collection operations.
03-ExpressionLanguage3
https://github.com/marfous/j1demo-pf
Expression Language 3.0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.18
-Prime Time with
PrimeFaces Components
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.19
-Prime Time with PrimeFaces Components
 With 100+ Rich Set of Components
 Built-in Ajax based on standard JSF 2.0 Ajax APIs
 Client APIs based on
 Enterprise theming w/ Theme Roller
With 4.0 – Sentinel We’re introducing cool stuff like,
– Client Side Validation
– Dialog Framework
– Tree Drag & Drop
– Deferred Loading and many more…
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.20
Examples on advanced UI components:
DataTable, Gmap, AutoComplete, Client Side
Validation, Tree Drag and Drop, The Dialog Framework
and others.
10-PrimeFacesComponents
https://github.com/marfous/j1demo-pf
-Prime Time with PrimeFaces Components
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.21
In the Jungle of
PrimeFaces Themes
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.22
In the Jungle of PrimeFaces Themes
 Powered w/ jQueryUI and ThemeRoller CSS Framework
Skinning and Structural CSS architecture
 ThemeRoller provides visual editor to create new themes
 ~40 themes available by only adding JAR dependency
 Advanced themes are also available
– Twitter Bootstrap Theme
– Metro UI Theme ($$)
 Configuration is done by <context-param> in web.xml
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.23
Theme variations on UI Components
Configuration of theme infrastructure
04-PrimeFacesThemes
https://github.com/marfous/j1demo-pf
In the Jungle of PrimeFaces Themes
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.24
PrimePush, PrimeUI and
PrimeMobile
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.25
PrimePush, PrimeUI and PrimeMobile
 PrimePush brings first class support with Atmosphere Framework
– WebSockets, long polling, streaming, jsonp
 PrimeUI is spin-off from the JSF suite, provides rich javascript widgets
– autoComplete, dataTable and many others (~35 components)
 PrimeMobile offers UI components for mobile devices, supports for:
– powered by jQuery
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.26
PrimePush Checkin Demo w/ PrimeMobile in Action
PrimeUI integrated with REST Services
05-PrimePushUiMobile
https://github.com/marfous/j1demo-pf
PrimePush, PrimeUI and PrimeMobile
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.27
JSF scaffolding with
PrimeFaces
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.28
JSF scaffolding with PrimeFaces
 Generation of CRUD skeleton from the database
– NetBeans IDE: JSPs or vanilla Facelets
– nbpfcrudgen plugin: Facelets with PrimeFaces
 Last feature – NetBeans 7.3.1 generates CDI artifacts
 Procedure
– Generate entity classes from database
– Generate JSF pages from entities
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.29
CRUD application generation using standard
JavaServer Faces templates, generation of
PrimeFaces templates.
06-JsfPrimeFacesScaffolding
https://github.com/marfous/j1demo-pf
JSF scaffolding with PrimeFaces
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.30
Faces Flows
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.31
Faces Flows
 Reusable collection of screens with defined entry and exit points
 Nodes like switchNode, finalizer, methodCall etc.
 Derived from proven technologies: Spring WebFlow, ADF Task Flow
 JSF bound with CDI - @FlowScoped
 Definition:
– Faces-config configuration file
– Java definition using FlowBuilder (@FlowDefinition)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.32
Sample wizard using navigation elements of the Faces
Flow, flow scope defined bean, Faces Flow component
as a plugable library.
07-FacesFlow, 07-FacesFlowLibrary
https://github.com/marfous/j1demo-pf
Faces Flows
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.33
Annotation based
component registration
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.34
Annotation based component registration
 Improved FacesComponent interface
 Eliminates needs for the TLD file
 CDI capable component
 @FacesComponent(createTag = true,
namespace = ... , // implicitly: http://xmlns.jcp.org/jsf/component
tagName = ...) // implicitly: lowercased class name
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.35
Usage of the tag defined by @FacesComponent without
any tag library, CDI binding in the component, Java SE
project as a custom tag library.
08-FacesComponent, 08-FacesComponentLibrary
https://github.com/marfous/j1demo-pf
Annotation based component registration
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.36
File Upload
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.37
File Upload
 Servlet 3.0 multipart architecture
 Standard component with/without AJAX requests
 For lower JSF versions already available as PrimeFaces component
 Prerequisites
– Enctype multipart/form-data of the form
– Servlet 3.0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.38
File Upload of the standard JSF 2.2 and PrimeFaces
library in action, with validation of type and size limit.
09-FileUpload
https://github.com/marfous/j1demo-pf
File Upload
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.39
PrimeFaces Cookbook Over 90 practical
recipes to learn
PrimeFaces
written by:
Oleg Varaksin
& Yours Truly
Author discount 40%
with code: -
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.40
Useful Links
 http://docs.oracle.com/javaee/7/tutorial/doc/home.htm
 http://www.primefaces.org/showcase
 http://blog.primefaces.org
 https://netbeans.org/kb/trails/java-ee.html
 http://sourceforge.net/projects/nbpfcrudgen
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.41
Graphic Section Divider

More Related Content

PDF
jDays2015 - JavaEE vs. Spring Smackdown
PDF
MicroProfile for MicroServices
PPTX
Java EE vs Spring Framework
PPT
What's New in WebLogic 12.1.3 and Beyond
PDF
Java EE Revisits GoF Design Patterns
PDF
Java Enterprise Edition 6 Overview
PDF
Jdc 2010 - Maven, Intelligent Projects
PDF
JavaOne 2011: Migrating Spring Applications to Java EE 6
jDays2015 - JavaEE vs. Spring Smackdown
MicroProfile for MicroServices
Java EE vs Spring Framework
What's New in WebLogic 12.1.3 and Beyond
Java EE Revisits GoF Design Patterns
Java Enterprise Edition 6 Overview
Jdc 2010 - Maven, Intelligent Projects
JavaOne 2011: Migrating Spring Applications to Java EE 6

What's hot (20)

PDF
Java EE7 Demystified
PPT
Java EE7 in action
PPTX
JSF 2.2
PPT
Java EE and Spring Side-by-Side
PPT
Have You Seen Java EE Lately?
PDF
Burns jsf-confess-2015
PDF
What's Coming in Java EE 8
PDF
JavaFX Uni Parthenope
PPT
Ankara JUG Ağustos 2013 - Oracle ADF
PDF
Building Java Desktop Apps with JavaFX 8 and Java EE 7
PDF
Java EE 7 from an HTML5 Perspective, JavaLand 2015
PPTX
JavaFX and JEE 7
PPTX
JavaFX 2 Using the Spring Framework
PPTX
Future of Java EE with Java SE 8
PPTX
Spring andspringboot training
PDF
JSF 2.2 Input Output JavaLand 2015
PPTX
Move from J2EE to Java EE
PPTX
Ed presents JSF 2.2 and WebSocket to Gameduell.
ODP
Introduction to Spring Framework and Spring IoC
PPTX
Introduction to Ibatis by Rohit
Java EE7 Demystified
Java EE7 in action
JSF 2.2
Java EE and Spring Side-by-Side
Have You Seen Java EE Lately?
Burns jsf-confess-2015
What's Coming in Java EE 8
JavaFX Uni Parthenope
Ankara JUG Ağustos 2013 - Oracle ADF
Building Java Desktop Apps with JavaFX 8 and Java EE 7
Java EE 7 from an HTML5 Perspective, JavaLand 2015
JavaFX and JEE 7
JavaFX 2 Using the Spring Framework
Future of Java EE with Java SE 8
Spring andspringboot training
JSF 2.2 Input Output JavaLand 2015
Move from J2EE to Java EE
Ed presents JSF 2.2 and WebSocket to Gameduell.
Introduction to Spring Framework and Spring IoC
Introduction to Ibatis by Rohit
Ad

Similar to JavaOne - 10 Tips for Java EE 7 with PrimeFaces (20)

PPTX
10 Tips for Java EE 7 with PrimeFaces - JavaOne 2013
PPTX
55 New Features in Java SE 8
PPTX
GlassFish in Production Environments
PDF
How Scala, Wicket, and Java EE Can Improve Web Development
PDF
JDK 10 Java Module System
PPTX
What's new for JavaFX in JDK8 - Weaver
PDF
Java SE 8
PDF
Java EE 7 - Embracing the Cloud and HTML 5
PPTX
Whats Next for JCA?
PDF
Marcin Szałowicz - MySQL Workbench
PPTX
Java ee7 1hour
PDF
Consuming Java EE in Desktop, Web, and Mobile Frontends
PDF
JavaCro'14 - Consuming Java EE Backends in Desktop, Web, and Mobile Frontends...
PDF
Building Large Java Projects Faster: Multicore javac and Makefile integration
PPTX
Project Lambda: Functional Programming Constructs in Java - Simon Ritter (Ora...
DOC
PDF
Java Cloud and Container Ready
PPTX
Building microservice for api with helidon and cicd pipeline
PPTX
Introduction Java Web Framework and Web Server.
PPT
GlassFish BOF
10 Tips for Java EE 7 with PrimeFaces - JavaOne 2013
55 New Features in Java SE 8
GlassFish in Production Environments
How Scala, Wicket, and Java EE Can Improve Web Development
JDK 10 Java Module System
What's new for JavaFX in JDK8 - Weaver
Java SE 8
Java EE 7 - Embracing the Cloud and HTML 5
Whats Next for JCA?
Marcin Szałowicz - MySQL Workbench
Java ee7 1hour
Consuming Java EE in Desktop, Web, and Mobile Frontends
JavaCro'14 - Consuming Java EE Backends in Desktop, Web, and Mobile Frontends...
Building Large Java Projects Faster: Multicore javac and Makefile integration
Project Lambda: Functional Programming Constructs in Java - Simon Ritter (Ora...
Java Cloud and Container Ready
Building microservice for api with helidon and cicd pipeline
Introduction Java Web Framework and Web Server.
GlassFish BOF
Ad

More from Mert Çalışkan (7)

PDF
BMO - Intelligent Projects with Maven
PDF
Intelligent Projects with Maven - DevFest Istanbul
PDF
Better Career with Java
PDF
Test Infected
KEY
Gelecex - Maven ile Akilli Projeler
PDF
Fikrim Acik Kodum Acik
KEY
Enterprise Java Web Application Frameworks Sample Stack Implementation
BMO - Intelligent Projects with Maven
Intelligent Projects with Maven - DevFest Istanbul
Better Career with Java
Test Infected
Gelecex - Maven ile Akilli Projeler
Fikrim Acik Kodum Acik
Enterprise Java Web Application Frameworks Sample Stack Implementation

Recently uploaded (20)

PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
PDF
FourierSeries-QuestionsWithAnswers(Part-A).pdf
PDF
Yogi Goddess Pres Conference Studio Updates
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
A systematic review of self-coping strategies used by university students to ...
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PPTX
GDM (1) (1).pptx small presentation for students
PDF
Complications of Minimal Access Surgery at WLH
PDF
Classroom Observation Tools for Teachers
PDF
Computing-Curriculum for Schools in Ghana
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
PDF
01-Introduction-to-Information-Management.pdf
PPTX
master seminar digital applications in india
human mycosis Human fungal infections are called human mycosis..pptx
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Final Presentation General Medicine 03-08-2024.pptx
O5-L3 Freight Transport Ops (International) V1.pdf
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
FourierSeries-QuestionsWithAnswers(Part-A).pdf
Yogi Goddess Pres Conference Studio Updates
Module 4: Burden of Disease Tutorial Slides S2 2025
A systematic review of self-coping strategies used by university students to ...
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
GDM (1) (1).pptx small presentation for students
Complications of Minimal Access Surgery at WLH
Classroom Observation Tools for Teachers
Computing-Curriculum for Schools in Ghana
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Microbial disease of the cardiovascular and lymphatic systems
Introduction-to-Literarature-and-Literary-Studies-week-Prelim-coverage.pptx
01-Introduction-to-Information-Management.pdf
master seminar digital applications in india

JavaOne - 10 Tips for Java EE 7 with PrimeFaces

  • 1. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.1
  • 2. 10 Tips for Java EE 7 with PrimeFaces Mert Çalışkan & Martin Fousek Software Architect Software Developer at T2 Yazılım Ltd. at Oracle, NetBeans
  • 3. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.3 The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  • 4. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.4 Agenda  Introduction – Java EE 7 & JavaServer Faces 2.2, PrimeFaces, NetBeans IDE  Tour through 10 features of the JSF and PF – Feature overview – Samples in action
  • 5. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.5  Java EE 7 – 14 JSRs and 9 MRs, themes: – HTML5 – Developer productivity – Enterprise demands  JavaServer Faces 2.2 big ticket features: – HTML(5) Friendly Markup – Faces Flow – Resource Library Contract Java EE 7 & JavaServer Faces 2.2
  • 6. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.6  Open Source Component Library for JSF 2.x JSF 2.2 is supported with PF version 4.x  Very Lightweight w/ Zero Configuration  Plenty of examples in Showcase, extensive theming, provides mobile components  Well documented, user guides, books & etc.  Large and active community PrimeFaces
  • 7. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.7  Open source IDE  Support for Java, PHP, C/C++, Groovy  Latest features – Java SE 7, Java EE 7 and JavaFX – HTML(5) client side development, CSS preprocessors, JavaSciprt frameworks – Cordova, FindBugs, VCS improvements – PHP 5.4 and the newest PHP frameworks NetBeans IDE
  • 8. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.8  Sample codes to demonstrate the tips  Mavenized projects from Java EE 7 archetype  Repository: github.com/marfous/j1demo-pf Sample Codes
  • 9. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.9 HTML(5) Friendly Markup
  • 10. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.10 HTML(5) Friendly Markup  New namespaces – passthrough elements: http://xmlns.jcp.org/jsf (TagDecorator) – passthrough attributes: http://xmlns.jcp.org/jsf/passthrough (RenderKit)  Advantages – Getting control over rendered Facelets – JSF components / JavaScript components / arbitrary mixing – Write and style pure HTML with benefits of JSF
  • 11. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.11 Form with usage of HTML friendly markup: validation by Bean Validation API with localized messages, custom Bean Validation annotation, passthrough attributes and elements, usage of jQuery plugin at JSF component. 01-HtmlFriendlyMarkup https://github.com/marfous/j1demo-pf HTML(5) Friendly Markup
  • 12. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.12 Resource Libraries Contracts
  • 13. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.13 Resource Libraries Contracts  Theme definitions across one or more web applications  Libraries consisting of templates, insertion points, resources  Can be bundled directly into Web Application or within .jar library  How to choose the used one: – there is only one option – static or dynamic view definition – URL based definition within faces-config  Multi-templating
  • 14. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.14 Simple Resource Libraries Contracts usage, switching RLCs dynamically using Expression Language and ManagedBean. 02-ResourceLibrariesContracts https://github.com/marfous/j1demo-pf Resource Libraries Contracts
  • 15. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.15 Expression Language 3.0
  • 16. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.16 Expression Language 3.0  Communication between presentation layer and application logic  Deferred or immediate evaluation of expressions  Sets and gets data, invokes methods  Features – Standalone ELProcessor – Concatenation, semicolon and assignments operators – Static collections – Collection Operations (aligned with Java SE 8) – Lambda Expressions (aligned with Java SE 8)
  • 17. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.17 Examples of Expression Language 3.0 features: standalone EL Processor, operators, static fields, collections, lambdas and collection operations. 03-ExpressionLanguage3 https://github.com/marfous/j1demo-pf Expression Language 3.0
  • 18. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.18 -Prime Time with PrimeFaces Components
  • 19. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.19 -Prime Time with PrimeFaces Components  With 100+ Rich Set of Components  Built-in Ajax based on standard JSF 2.0 Ajax APIs  Client APIs based on  Enterprise theming w/ Theme Roller With 4.0 – Sentinel We’re introducing cool stuff like, – Client Side Validation – Dialog Framework – Tree Drag & Drop – Deferred Loading and many more…
  • 20. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.20 Examples on advanced UI components: DataTable, Gmap, AutoComplete, Client Side Validation, Tree Drag and Drop, The Dialog Framework and others. 10-PrimeFacesComponents https://github.com/marfous/j1demo-pf -Prime Time with PrimeFaces Components
  • 21. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.21 In the Jungle of PrimeFaces Themes
  • 22. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.22 In the Jungle of PrimeFaces Themes  Powered w/ jQueryUI and ThemeRoller CSS Framework Skinning and Structural CSS architecture  ThemeRoller provides visual editor to create new themes  ~40 themes available by only adding JAR dependency  Advanced themes are also available – Twitter Bootstrap Theme – Metro UI Theme ($$)  Configuration is done by <context-param> in web.xml
  • 23. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.23 Theme variations on UI Components Configuration of theme infrastructure 04-PrimeFacesThemes https://github.com/marfous/j1demo-pf In the Jungle of PrimeFaces Themes
  • 24. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.24 PrimePush, PrimeUI and PrimeMobile
  • 25. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.25 PrimePush, PrimeUI and PrimeMobile  PrimePush brings first class support with Atmosphere Framework – WebSockets, long polling, streaming, jsonp  PrimeUI is spin-off from the JSF suite, provides rich javascript widgets – autoComplete, dataTable and many others (~35 components)  PrimeMobile offers UI components for mobile devices, supports for: – powered by jQuery
  • 26. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.26 PrimePush Checkin Demo w/ PrimeMobile in Action PrimeUI integrated with REST Services 05-PrimePushUiMobile https://github.com/marfous/j1demo-pf PrimePush, PrimeUI and PrimeMobile
  • 27. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.27 JSF scaffolding with PrimeFaces
  • 28. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.28 JSF scaffolding with PrimeFaces  Generation of CRUD skeleton from the database – NetBeans IDE: JSPs or vanilla Facelets – nbpfcrudgen plugin: Facelets with PrimeFaces  Last feature – NetBeans 7.3.1 generates CDI artifacts  Procedure – Generate entity classes from database – Generate JSF pages from entities
  • 29. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.29 CRUD application generation using standard JavaServer Faces templates, generation of PrimeFaces templates. 06-JsfPrimeFacesScaffolding https://github.com/marfous/j1demo-pf JSF scaffolding with PrimeFaces
  • 30. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.30 Faces Flows
  • 31. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.31 Faces Flows  Reusable collection of screens with defined entry and exit points  Nodes like switchNode, finalizer, methodCall etc.  Derived from proven technologies: Spring WebFlow, ADF Task Flow  JSF bound with CDI - @FlowScoped  Definition: – Faces-config configuration file – Java definition using FlowBuilder (@FlowDefinition)
  • 32. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.32 Sample wizard using navigation elements of the Faces Flow, flow scope defined bean, Faces Flow component as a plugable library. 07-FacesFlow, 07-FacesFlowLibrary https://github.com/marfous/j1demo-pf Faces Flows
  • 33. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.33 Annotation based component registration
  • 34. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.34 Annotation based component registration  Improved FacesComponent interface  Eliminates needs for the TLD file  CDI capable component  @FacesComponent(createTag = true, namespace = ... , // implicitly: http://xmlns.jcp.org/jsf/component tagName = ...) // implicitly: lowercased class name
  • 35. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.35 Usage of the tag defined by @FacesComponent without any tag library, CDI binding in the component, Java SE project as a custom tag library. 08-FacesComponent, 08-FacesComponentLibrary https://github.com/marfous/j1demo-pf Annotation based component registration
  • 36. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.36 File Upload
  • 37. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.37 File Upload  Servlet 3.0 multipart architecture  Standard component with/without AJAX requests  For lower JSF versions already available as PrimeFaces component  Prerequisites – Enctype multipart/form-data of the form – Servlet 3.0
  • 38. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.38 File Upload of the standard JSF 2.2 and PrimeFaces library in action, with validation of type and size limit. 09-FileUpload https://github.com/marfous/j1demo-pf File Upload
  • 39. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.39 PrimeFaces Cookbook Over 90 practical recipes to learn PrimeFaces written by: Oleg Varaksin & Yours Truly Author discount 40% with code: -
  • 40. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.40 Useful Links  http://docs.oracle.com/javaee/7/tutorial/doc/home.htm  http://www.primefaces.org/showcase  http://blog.primefaces.org  https://netbeans.org/kb/trails/java-ee.html  http://sourceforge.net/projects/nbpfcrudgen
  • 41. Copyright © 2012, Oracle and/or its affiliates. All rights reserved.41 Graphic Section Divider