SlideShare uma empresa Scribd logo
1 de 17
Text 
JSF 2.3 
Responsive Web Design + 
Single-Page Applications by Ian Hlavats
Industry Trends 
Rise of Front-End Frameworks 
Responsive Web Design (Bootstrap, Foundation) 
Single Page Applications (AngularJS, Ember.js)
Responsive 
Web Design 
• Flexible grid system 
• Adapts to device 
• Mobile-first approach
Bootstrap / 
Foundation 
• Bootstrap is #1 project 
on GitHub 
• Cross-browser RWD 
• SASS/LESS support 
• Reusable UI 
components
Next-Gen CSS 
• Pre-processors 
• Variables 
• Functions 
• Mixins 
• Better syntax 
• Modular organization
Single Page Applications 
(SPA) 
One top-level HTML page 
(template) 
Many partial HTML pages 
loaded via DOM changes 
Client-side MVC with 
JavaScript API 
JSON/REST based on 
thin-server architecture
AngularJS 
Enhanced HTML with custom 
elements and attributes 
Modular architecture 
Models, views, controllers, 
services, factories, filters, … 
Two-way data binding 
Custom directives for 
reusable UI components
Transpiler Languages 
Object-oriented 
Support interfaces, classes, 
generics, inheritance 
Type-safe 
Modular 
Compile to JavaScript
Grunt task runner 
Modular build tool based 
on Node.js 
Compiles TypeScript to 
JavaScript 
Runs Karma unit tests, 
JSHint static analyzer 
Optimizes assets for 
production
Bower 
Dependency manager for 
JavaScript libraries 
Searchable registry to find 
and download common 
libraries 
Assumes all libraries are 
available in public/private Git 
repos 
Looks for bower.json to 
declare dependencies
Great, so what does this all mean for JSF?
SWOT Assessment: JSF 
Strengths 
Components/RenderKits 
Managed Beans 
Weaknesses 
Server-centric 
Library incompatibilities 
Opportunities 
Better support for 
front-end frameworks 
and responsive web 
design 
Threats 
Obsolescence
How can we make JSF 2.3 better?
Integrate, Engage, Embrace 
Integrate with front-end 
technologies and 
frameworks 
Engage with wider 
developer community 
Embrace change and 
modernization
Integration Ideas 
Let’s start with AngularJS + Bootstrap + TypeScript 
Write new standard/core RenderKits that target 
AngularJS directives/filters 
Use BootStrap for responsive web design
Integration Ideas 
Support JAX-RS annotations on managed beans 
Implement SPA support for AngularJS (security 
features, URL resolution, resource loading) 
Distribute JSF component libraries via Bower
Let’s discuss!

Mais conteúdo relacionado

Mais procurados

eSobi Website Multilayered Architecture
eSobi Website Multilayered ArchitectureeSobi Website Multilayered Architecture
eSobi Website Multilayered Architecture
Allan Huang
 

Mais procurados (20)

Angular jS Introduction by Google
Angular jS Introduction by GoogleAngular jS Introduction by Google
Angular jS Introduction by Google
 
Introduction To Building Enterprise Web Application With Spring Mvc
Introduction To Building Enterprise Web Application With Spring MvcIntroduction To Building Enterprise Web Application With Spring Mvc
Introduction To Building Enterprise Web Application With Spring Mvc
 
Spring Framework
Spring FrameworkSpring Framework
Spring Framework
 
Spring mvc
Spring mvcSpring mvc
Spring mvc
 
Java spring framework
Java spring frameworkJava spring framework
Java spring framework
 
eSobi Website Multilayered Architecture
eSobi Website Multilayered ArchitectureeSobi Website Multilayered Architecture
eSobi Website Multilayered Architecture
 
1. Spring intro IoC
1. Spring intro IoC1. Spring intro IoC
1. Spring intro IoC
 
Jsp with mvc
Jsp with mvcJsp with mvc
Jsp with mvc
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
Spring MVC framework
Spring MVC frameworkSpring MVC framework
Spring MVC framework
 
Introduction to ejb and struts framework
Introduction to ejb and struts frameworkIntroduction to ejb and struts framework
Introduction to ejb and struts framework
 
Spring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggetsSpring Framework Tutorial | VirtualNuggets
Spring Framework Tutorial | VirtualNuggets
 
Spring MVC 5 & Hibernate 5 Integration
Spring MVC 5 & Hibernate 5 IntegrationSpring MVC 5 & Hibernate 5 Integration
Spring MVC 5 & Hibernate 5 Integration
 
Introduction to Spring Framework
Introduction to Spring FrameworkIntroduction to Spring Framework
Introduction to Spring Framework
 
Spring Framework
Spring Framework  Spring Framework
Spring Framework
 
Spring MVC Architecture Tutorial
Spring MVC Architecture TutorialSpring MVC Architecture Tutorial
Spring MVC Architecture Tutorial
 
Java EE 8 Recipes
Java EE 8 RecipesJava EE 8 Recipes
Java EE 8 Recipes
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Spring Framework - Core
Spring Framework - CoreSpring Framework - Core
Spring Framework - Core
 
Building Web Application Using Spring Framework
Building Web Application Using Spring FrameworkBuilding Web Application Using Spring Framework
Building Web Application Using Spring Framework
 

Semelhante a JSF 2.3: Integration with Front-End Frameworks

Comprehensive Guide to JavaScript Frameworks
Comprehensive Guide to JavaScript FrameworksComprehensive Guide to JavaScript Frameworks
Comprehensive Guide to JavaScript Frameworks
kavsinghta
 
Sid K
Sid KSid K
Sid K
Sid K
 

Semelhante a JSF 2.3: Integration with Front-End Frameworks (20)

Introduction to backbone_js
Introduction to backbone_jsIntroduction to backbone_js
Introduction to backbone_js
 
Top java script frameworks ppt
Top java script frameworks pptTop java script frameworks ppt
Top java script frameworks ppt
 
Top 10 Javascript Frameworks For Easy Web Development
Top 10 Javascript Frameworks For Easy Web DevelopmentTop 10 Javascript Frameworks For Easy Web Development
Top 10 Javascript Frameworks For Easy Web Development
 
Full Stack Developer Course in Chandigarh
Full Stack Developer Course in ChandigarhFull Stack Developer Course in Chandigarh
Full Stack Developer Course in Chandigarh
 
Single page applications with backbone js
Single page applications with backbone jsSingle page applications with backbone js
Single page applications with backbone js
 
Web development using javaScript, React js, Node js, HTML, CSS and SQL
Web development using javaScript, React js, Node js, HTML, CSS and SQLWeb development using javaScript, React js, Node js, HTML, CSS and SQL
Web development using javaScript, React js, Node js, HTML, CSS and SQL
 
Azure Data Storage
Azure Data StorageAzure Data Storage
Azure Data Storage
 
Comprehensive Guide to JavaScript Frameworks
Comprehensive Guide to JavaScript FrameworksComprehensive Guide to JavaScript Frameworks
Comprehensive Guide to JavaScript Frameworks
 
Javascript frameworks
Javascript frameworksJavascript frameworks
Javascript frameworks
 
AngularJS Anatomy & Directives
AngularJS Anatomy & DirectivesAngularJS Anatomy & Directives
AngularJS Anatomy & Directives
 
AJAX Frameworks
AJAX FrameworksAJAX Frameworks
AJAX Frameworks
 
Single page application and Framework
Single page application and FrameworkSingle page application and Framework
Single page application and Framework
 
Importance of React Js.pdf
Importance of React Js.pdfImportance of React Js.pdf
Importance of React Js.pdf
 
Introduction to JavaScript Full Stack
Introduction to JavaScript Full StackIntroduction to JavaScript Full Stack
Introduction to JavaScript Full Stack
 
Neeraja ganesh fs-v1
Neeraja ganesh fs-v1Neeraja ganesh fs-v1
Neeraja ganesh fs-v1
 
AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...
AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...
AngularJS + NancyFx + MongoDB = The best trio for ultimate SPA by Bojan Velja...
 
Web Apollo: A Web-based Genomic Annotation Editing Platform ISB2013
Web Apollo: A Web-based Genomic Annotation Editing Platform ISB2013Web Apollo: A Web-based Genomic Annotation Editing Platform ISB2013
Web Apollo: A Web-based Genomic Annotation Editing Platform ISB2013
 
9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose9 Best JavaScript Frameworks To Choose
9 Best JavaScript Frameworks To Choose
 
Sid K
Sid KSid K
Sid K
 
Introduction to Modern and Emerging Web Technologies
Introduction to Modern and Emerging Web TechnologiesIntroduction to Modern and Emerging Web Technologies
Introduction to Modern and Emerging Web Technologies
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

JSF 2.3: Integration with Front-End Frameworks

  • 1. Text JSF 2.3 Responsive Web Design + Single-Page Applications by Ian Hlavats
  • 2. Industry Trends Rise of Front-End Frameworks Responsive Web Design (Bootstrap, Foundation) Single Page Applications (AngularJS, Ember.js)
  • 3. Responsive Web Design • Flexible grid system • Adapts to device • Mobile-first approach
  • 4. Bootstrap / Foundation • Bootstrap is #1 project on GitHub • Cross-browser RWD • SASS/LESS support • Reusable UI components
  • 5. Next-Gen CSS • Pre-processors • Variables • Functions • Mixins • Better syntax • Modular organization
  • 6. Single Page Applications (SPA) One top-level HTML page (template) Many partial HTML pages loaded via DOM changes Client-side MVC with JavaScript API JSON/REST based on thin-server architecture
  • 7. AngularJS Enhanced HTML with custom elements and attributes Modular architecture Models, views, controllers, services, factories, filters, … Two-way data binding Custom directives for reusable UI components
  • 8. Transpiler Languages Object-oriented Support interfaces, classes, generics, inheritance Type-safe Modular Compile to JavaScript
  • 9. Grunt task runner Modular build tool based on Node.js Compiles TypeScript to JavaScript Runs Karma unit tests, JSHint static analyzer Optimizes assets for production
  • 10. Bower Dependency manager for JavaScript libraries Searchable registry to find and download common libraries Assumes all libraries are available in public/private Git repos Looks for bower.json to declare dependencies
  • 11. Great, so what does this all mean for JSF?
  • 12. SWOT Assessment: JSF Strengths Components/RenderKits Managed Beans Weaknesses Server-centric Library incompatibilities Opportunities Better support for front-end frameworks and responsive web design Threats Obsolescence
  • 13. How can we make JSF 2.3 better?
  • 14. Integrate, Engage, Embrace Integrate with front-end technologies and frameworks Engage with wider developer community Embrace change and modernization
  • 15. Integration Ideas Let’s start with AngularJS + Bootstrap + TypeScript Write new standard/core RenderKits that target AngularJS directives/filters Use BootStrap for responsive web design
  • 16. Integration Ideas Support JAX-RS annotations on managed beans Implement SPA support for AngularJS (security features, URL resolution, resource loading) Distribute JSF component libraries via Bower