SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
Enterprise Case Studies For
                               Ajax Push

   Steve Maryka, CTO                         Ryan Moquin,
      ICEsoft Technologies, Inc.           Senior Software Engineer




                                              Felipe Leme,
                                                Principal Engineer




ICESOFT TECHNOLOGIES INC.                  www.icefaces.org
ICEfaces is…

    ICEfaces is an Ajax framework that allows you to easily create
    server-centric Rich Internet Applications (RIA) in pure Java.


   •       Open source
   •       Standards-based
   •       Extends JSF
   •       Develop RIAs in pure Java, not JavaScript
   •       Leverages existing Java ecosystem
             – Use existing IDE
             – Deploy to any App Server
             – Combine with leading Java frameworks
             – Enrich existing JSP applications


                            Path of least resistance for Java developers


ICESOFT TECHNOLOGIES INC.                                            www.icefaces.org
Java EE Architecture




ICESOFT TECHNOLOGIES INC.   www.icefaces.org
Java EE Architecture + ICEfaces




                            Standards-based Java EE/JSF Development Model


ICESOFT TECHNOLOGIES INC.                                        www.icefaces.org
Direct-to-DOM (D2D)




                                                                                     DOM
                                                            Ajax Bridge             (Client)

                                                 DOM
                                               (Server)   Incremental DOM Updates




                            Direct-to-DOM Delivers Automatic Ajax


ICESOFT TECHNOLOGIES INC.                                       www.icefaces.org
Golden Gate Demo




ICESOFT TECHNOLOGIES INC.   www.icefaces.org
HTTP And The Asynchronous Web

  • Normal HTTP Interaction Is User-initiated




  • Push Requires Inversion of the HTTP Protocol




ICESOFT TECHNOLOGIES INC.                          www.icefaces.org
ICEfaces Push Mechanism



                            Server                                                                   Browser



                                                                                                         DOM
                                     DOM      3   DOM Update




                   JSF App.
                                                                                                                  5
                                                                                                        DOM Updates
                                                  4   Response (contains incremental update)
                                                                                                         Processed
                                      AJAX                                                       AJAX
                                     Bridge       1   Asynchronous XMLHttpRequest
                                                                                                Bridge
            Application
     2     State Change
                                                               Another Request            6




       10/10/08                                                Proprietary                                            8
ICESOFT TECHNOLOGIES INC.                                                                      www.icefaces.org
ICEfaces Makes Push Simple


• Configure Render Hub      …requestRender()
                                                                                Push
  managed bean
                                           Render Hub
• Register and populate
  render groups                                In Progress
                                               In Progress
                                                Waiting…                        Push
                                                Waiting…
• Request a render from
  application logic

• Framework does the rest
                                                                                Push

                               ICEfaces Application




ICESOFT TECHNOLOGIES INC.                                    www.icefaces.org
Scalability Of Ajax Push

  • Long-lived Connections per Client
           – Leads to thread exhaustion under standard Servlet model


  • Standards Lagging
           – JSR 315 addresses asynchronous communications


  • Open Source Solutions Exist
           –     Jetty 6 Continuations
           –     Tomcat 6 Comet Processor
           –     Glassfish Grizzly
           –     ICEfaces Asynchronous HTTP Server



ICESOFT TECHNOLOGIES INC.                                www.icefaces.org
C3 Demo




ICESOFT TECHNOLOGIES INC.   www.icefaces.org
What Are The Implications Of Mobile Ajax?
  • Resource-constrained Devices
           – Smaller footprint browser implementations
           – Limited memory for client-based applications


  • Limited Network Bandwidth
           – Application startup times


  • Network Latency
           – Application startup times
           – Server interaction delays


  • UI Paradigm Shift
           – Small real estate display
           – Alternate input devices



ICESOFT TECHNOLOGIES INC.                                   www.icefaces.org
Advantages Of ICEfaces For Mobile

  • Resource-constrained Devices
           – Lightweight client-side implementation


  • Limited Network Bandwidth
           – Small JavaScript means shorter load times
           – Minimal incremental updates


  • Network Latency
           – Ajax Push reduces hands-on user interaction


  • Security
           – Inherit Java EE Security Architecture



ICESOFT TECHNOLOGIES INC.                                  www.icefaces.org
incidentOS Demo




ICESOFT TECHNOLOGIES INC.   www.icefaces.org
ICEfaces Portal Integration


• Markup Aggregation Within
  Portal Container
       – Standard JSF support
• Ajax Interactions Bypass
  Portal Container
       – Eliminate Full-page Refresh
• JavaScript Coexistent With
  Portal Container
       – Vendor-specific
                                       Portal
• Multiple Portals Supported




ICESOFT TECHNOLOGIES INC.                       www.icefaces.org
Ajax Push With Portals

               Portlet        Portlet    Portlet
               A View         B View     C View
                                                         • Browser Connection Limits
                  AJAX         AJAX       AJAX
                                                            – Browser-side Connection Sharing
                 Bridge       Bridge     Bridge



                                                         • Multiple Web Applications
                                                            – Server-side Connection Sharing


    Non-Blocking             Blocking     Non-Blocking
     Connection             Connection     Connection

                               AHS

          Portlet
               B                             Portlet
      Portlet                                     C
           A
                              JMS

                  Multi App/ Multi Portlet



ICESOFT TECHNOLOGIES INC.                                                  www.icefaces.org
Q and A




      Stephen Maryka, CTO
      ICEsoft Technologies Inc.
      smaryka@icesoft.com

      Join us at: www.icefaces.org
      Or come visit us at our booth.




ICESOFT TECHNOLOGIES INC.              www.icefaces.org

Mais conteúdo relacionado

Mais procurados

Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
deimos
 
Web Performance 101 - Gil Givati
Web Performance 101 - Gil GivatiWeb Performance 101 - Gil Givati
Web Performance 101 - Gil Givati
Mika Josting
 
Guy Nirpaz Next Gen App Servers
Guy Nirpaz Next Gen App ServersGuy Nirpaz Next Gen App Servers
Guy Nirpaz Next Gen App Servers
deimos
 

Mais procurados (20)

OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
 
Getting Started with Rails on GlassFish (Hands-on Lab) - Spark IT 2010
Getting Started with Rails on GlassFish (Hands-on Lab) - Spark IT 2010Getting Started with Rails on GlassFish (Hands-on Lab) - Spark IT 2010
Getting Started with Rails on GlassFish (Hands-on Lab) - Spark IT 2010
 
Introduction To J Boss Seam
Introduction To J Boss SeamIntroduction To J Boss Seam
Introduction To J Boss Seam
 
Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
 
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
Vaadin - Rich Web Applications in Server-side Java without Plug-ins or JavaSc...
 
JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
Do We Need Esb Any More
Do We Need Esb Any MoreDo We Need Esb Any More
Do We Need Esb Any More
 
Web Performance 101 - Gil Givati
Web Performance 101 - Gil GivatiWeb Performance 101 - Gil Givati
Web Performance 101 - Gil Givati
 
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
Vaadin, Rich Web Apps in Server-Side Java without Plug-ins or JavaScript: Joo...
 
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
The Java EE 7 Platform: Productivity & HTML5 at JavaOne Latin America 2012
 
GlassFish & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUGGlassFish & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUG
 
Guy Nirpaz Next Gen App Servers
Guy Nirpaz Next Gen App ServersGuy Nirpaz Next Gen App Servers
Guy Nirpaz Next Gen App Servers
 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010
 
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
 
Running your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the CloudRunning your Java EE 6 applications in the Cloud
Running your Java EE 6 applications in the Cloud
 
CM WebClient for CA Plex
CM WebClient for CA PlexCM WebClient for CA Plex
CM WebClient for CA Plex
 
Roadmap For Fusion Middleware Application Server Infrastructure
Roadmap For Fusion Middleware Application Server InfrastructureRoadmap For Fusion Middleware Application Server Infrastructure
Roadmap For Fusion Middleware Application Server Infrastructure
 
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
The Java EE 7 Platform: Developing for the Cloud  (FISL 12)The Java EE 7 Platform: Developing for the Cloud  (FISL 12)
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
 
Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
Building Content Applications with JCR and OSGi
Building Content Applications with JCR and OSGiBuilding Content Applications with JCR and OSGi
Building Content Applications with JCR and OSGi
 

Destaque

Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008
rajivmordani
 
08 10 12 Meebo Ajaxworld Preso
08 10 12 Meebo Ajaxworld Preso08 10 12 Meebo Ajaxworld Preso
08 10 12 Meebo Ajaxworld Preso
rajivmordani
 
Ajax Integration Guide
Ajax Integration GuideAjax Integration Guide
Ajax Integration Guide
rajivmordani
 
I Phone Presentation Jan Linden Gips
I Phone Presentation Jan Linden GipsI Phone Presentation Jan Linden Gips
I Phone Presentation Jan Linden Gips
rajivmordani
 
Ajax World West I Phone Summit
Ajax World West I Phone SummitAjax World West I Phone Summit
Ajax World West I Phone Summit
rajivmordani
 
Ajax World2008 Eric Farrar
Ajax World2008 Eric FarrarAjax World2008 Eric Farrar
Ajax World2008 Eric Farrar
rajivmordani
 

Destaque (8)

Design Based Dev
Design Based DevDesign Based Dev
Design Based Dev
 
Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008Laird Best Practices Ajax World West2008
Laird Best Practices Ajax World West2008
 
08 10 12 Meebo Ajaxworld Preso
08 10 12 Meebo Ajaxworld Preso08 10 12 Meebo Ajaxworld Preso
08 10 12 Meebo Ajaxworld Preso
 
Ajax Integration Guide
Ajax Integration GuideAjax Integration Guide
Ajax Integration Guide
 
I Phone Presentation Jan Linden Gips
I Phone Presentation Jan Linden GipsI Phone Presentation Jan Linden Gips
I Phone Presentation Jan Linden Gips
 
Ajax World West I Phone Summit
Ajax World West I Phone SummitAjax World West I Phone Summit
Ajax World West I Phone Summit
 
Ajax World2008 Eric Farrar
Ajax World2008 Eric FarrarAjax World2008 Eric Farrar
Ajax World2008 Eric Farrar
 
Jsf Ajax
Jsf AjaxJsf Ajax
Jsf Ajax
 

Semelhante a Ajax World Fall08

Ajax Push ICEfaces Ted Goddard
Ajax Push ICEfaces Ted GoddardAjax Push ICEfaces Ted Goddard
Ajax Push ICEfaces Ted Goddard
rajivmordani
 
Egl Rui Ajax World
Egl Rui Ajax WorldEgl Rui Ajax World
Egl Rui Ajax World
rajivmordani
 
针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构
jeffz
 
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2
 
Ajax Frameworks in the J(2)EE Environment
Ajax Frameworks in the J(2)EE EnvironmentAjax Frameworks in the J(2)EE Environment
Ajax Frameworks in the J(2)EE Environment
starchaser
 
baidu开发者大会 - Web App开发框架介绍以及分析
baidu开发者大会 - Web App开发框架介绍以及分析baidu开发者大会 - Web App开发框架介绍以及分析
baidu开发者大会 - Web App开发框架介绍以及分析
joylite
 

Semelhante a Ajax World Fall08 (20)

Ic Efaces Glass Fish Ted Goddard
Ic Efaces Glass Fish Ted GoddardIc Efaces Glass Fish Ted Goddard
Ic Efaces Glass Fish Ted Goddard
 
Ajax Push ICEfaces Ted Goddard
Ajax Push ICEfaces Ted GoddardAjax Push ICEfaces Ted Goddard
Ajax Push ICEfaces Ted Goddard
 
Egl Rui Ajax World
Egl Rui Ajax WorldEgl Rui Ajax World
Egl Rui Ajax World
 
ICEfaces and JSF 2.0 on GlassFish
ICEfaces and JSF 2.0 on GlassFishICEfaces and JSF 2.0 on GlassFish
ICEfaces and JSF 2.0 on GlassFish
 
Building single page applications
Building single page applicationsBuilding single page applications
Building single page applications
 
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog CcFlex For Java Architects Ledroff Breizh Jug V Blog Cc
Flex For Java Architects Ledroff Breizh Jug V Blog Cc
 
针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构针对iPad平台的高性能网站架构
针对iPad平台的高性能网站架构
 
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected BusinessWSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
WSO2Con Asia 2014 - WSO2 AppDev Platform for the Connected Business
 
WSO2 AppDev platform
WSO2 AppDev platformWSO2 AppDev platform
WSO2 AppDev platform
 
HTML alchemy: the secrets of mixing JavaScript and Java EE - Matthias Wessendorf
HTML alchemy: the secrets of mixing JavaScript and Java EE - Matthias WessendorfHTML alchemy: the secrets of mixing JavaScript and Java EE - Matthias Wessendorf
HTML alchemy: the secrets of mixing JavaScript and Java EE - Matthias Wessendorf
 
Optimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEMOptimizing HTML5 Sites with CQ5/WEM
Optimizing HTML5 Sites with CQ5/WEM
 
Application Architecture Trends
Application Architecture TrendsApplication Architecture Trends
Application Architecture Trends
 
Ajax Frameworks in the J(2)EE Environment
Ajax Frameworks in the J(2)EE EnvironmentAjax Frameworks in the J(2)EE Environment
Ajax Frameworks in the J(2)EE Environment
 
JavaFX Versus HTML5 - JavaOne 2014
JavaFX Versus HTML5 - JavaOne 2014JavaFX Versus HTML5 - JavaOne 2014
JavaFX Versus HTML5 - JavaOne 2014
 
WebBee rapid web app development teck stack
WebBee rapid web app development teck stackWebBee rapid web app development teck stack
WebBee rapid web app development teck stack
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SE
 
[English version] JavaFX and Web Integration
[English version] JavaFX and Web Integration[English version] JavaFX and Web Integration
[English version] JavaFX and Web Integration
 
baidu开发者大会 - Web App开发框架介绍以及分析
baidu开发者大会 - Web App开发框架介绍以及分析baidu开发者大会 - Web App开发框架介绍以及分析
baidu开发者大会 - Web App开发框架介绍以及分析
 
Sail Fin Webinar Overview
Sail Fin Webinar OverviewSail Fin Webinar Overview
Sail Fin Webinar Overview
 
Project Zero For Javapolis 2007
Project Zero For Javapolis 2007Project Zero For Javapolis 2007
Project Zero For Javapolis 2007
 

Mais de rajivmordani

Web 2 0 Data Visualization With Jsf
Web 2 0 Data Visualization With JsfWeb 2 0 Data Visualization With Jsf
Web 2 0 Data Visualization With Jsf
rajivmordani
 
X Aware Ajax World V1
X Aware Ajax World V1X Aware Ajax World V1
X Aware Ajax World V1
rajivmordani
 
The Beauty Of Java Script V5a
The Beauty Of Java Script V5aThe Beauty Of Java Script V5a
The Beauty Of Java Script V5a
rajivmordani
 
Tripit Ajaxworld V5
Tripit Ajaxworld V5Tripit Ajaxworld V5
Tripit Ajaxworld V5
rajivmordani
 
Turbo Enterprise Web 2.0 Ajax World 20081
Turbo Enterprise Web 2.0 Ajax World 20081Turbo Enterprise Web 2.0 Ajax World 20081
Turbo Enterprise Web 2.0 Ajax World 20081
rajivmordani
 
Sue Googe Spice Up Ux
Sue Googe Spice Up UxSue Googe Spice Up Ux
Sue Googe Spice Up Ux
rajivmordani
 
Social Networking Intranet
Social Networking IntranetSocial Networking Intranet
Social Networking Intranet
rajivmordani
 
Practical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter SvenssonPractical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter Svensson
rajivmordani
 
Server Side Javascript
Server Side JavascriptServer Side Javascript
Server Side Javascript
rajivmordani
 
Slow Cool 20081009 Final
Slow Cool 20081009 FinalSlow Cool 20081009 Final
Slow Cool 20081009 Final
rajivmordani
 
Pushing Datatothe Browserwith Comet Ajax W
Pushing Datatothe Browserwith Comet Ajax WPushing Datatothe Browserwith Comet Ajax W
Pushing Datatothe Browserwith Comet Ajax W
rajivmordani
 
I Phone Dev Summit Prezo Guy Naor Final
I Phone Dev Summit Prezo Guy Naor FinalI Phone Dev Summit Prezo Guy Naor Final
I Phone Dev Summit Prezo Guy Naor Final
rajivmordani
 
Netapp Michael Galpin
Netapp Michael GalpinNetapp Michael Galpin
Netapp Michael Galpin
rajivmordani
 
Mike Grushin Developing Ugc Sites That Scale
Mike Grushin    Developing Ugc Sites That ScaleMike Grushin    Developing Ugc Sites That Scale
Mike Grushin Developing Ugc Sites That Scale
rajivmordani
 
Java Fx Ajaxworld Rags V1
Java Fx Ajaxworld Rags V1Java Fx Ajaxworld Rags V1
Java Fx Ajaxworld Rags V1
rajivmordani
 
Good Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas CrockfordGood Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas Crockford
rajivmordani
 
Flying Pixels Ent Apps Jeremy Chone
Flying Pixels Ent Apps Jeremy ChoneFlying Pixels Ent Apps Jeremy Chone
Flying Pixels Ent Apps Jeremy Chone
rajivmordani
 

Mais de rajivmordani (20)

Web 2 0 Data Visualization With Jsf
Web 2 0 Data Visualization With JsfWeb 2 0 Data Visualization With Jsf
Web 2 0 Data Visualization With Jsf
 
X Aware Ajax World V1
X Aware Ajax World V1X Aware Ajax World V1
X Aware Ajax World V1
 
The Beauty Of Java Script V5a
The Beauty Of Java Script V5aThe Beauty Of Java Script V5a
The Beauty Of Java Script V5a
 
Tripit Ajaxworld V5
Tripit Ajaxworld V5Tripit Ajaxworld V5
Tripit Ajaxworld V5
 
Turbo Enterprise Web 2.0 Ajax World 20081
Turbo Enterprise Web 2.0 Ajax World 20081Turbo Enterprise Web 2.0 Ajax World 20081
Turbo Enterprise Web 2.0 Ajax World 20081
 
Sue Googe Spice Up Ux
Sue Googe Spice Up UxSue Googe Spice Up Ux
Sue Googe Spice Up Ux
 
Social Networking Intranet
Social Networking IntranetSocial Networking Intranet
Social Networking Intranet
 
Ssjs Presentation
Ssjs PresentationSsjs Presentation
Ssjs Presentation
 
Practical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter SvenssonPractical Thin Server Architecture With Dojo Peter Svensson
Practical Thin Server Architecture With Dojo Peter Svensson
 
Server Side Javascript
Server Side JavascriptServer Side Javascript
Server Side Javascript
 
Ria Enterprise
Ria EnterpriseRia Enterprise
Ria Enterprise
 
Slow Cool 20081009 Final
Slow Cool 20081009 FinalSlow Cool 20081009 Final
Slow Cool 20081009 Final
 
Pushing Datatothe Browserwith Comet Ajax W
Pushing Datatothe Browserwith Comet Ajax WPushing Datatothe Browserwith Comet Ajax W
Pushing Datatothe Browserwith Comet Ajax W
 
I Phone Dev Summit Prezo Guy Naor Final
I Phone Dev Summit Prezo Guy Naor FinalI Phone Dev Summit Prezo Guy Naor Final
I Phone Dev Summit Prezo Guy Naor Final
 
Netapp Michael Galpin
Netapp Michael GalpinNetapp Michael Galpin
Netapp Michael Galpin
 
Mike Grushin Developing Ugc Sites That Scale
Mike Grushin    Developing Ugc Sites That ScaleMike Grushin    Developing Ugc Sites That Scale
Mike Grushin Developing Ugc Sites That Scale
 
Java Fx Ajaxworld Rags V1
Java Fx Ajaxworld Rags V1Java Fx Ajaxworld Rags V1
Java Fx Ajaxworld Rags V1
 
Good Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas CrockfordGood Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas Crockford
 
Flying Pixels Ent Apps Jeremy Chone
Flying Pixels Ent Apps Jeremy ChoneFlying Pixels Ent Apps Jeremy Chone
Flying Pixels Ent Apps Jeremy Chone
 
I Phone Dev
I Phone DevI Phone Dev
I Phone Dev
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Último (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
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
 
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...
 
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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
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
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 

Ajax World Fall08

  • 1. Enterprise Case Studies For Ajax Push Steve Maryka, CTO Ryan Moquin, ICEsoft Technologies, Inc. Senior Software Engineer Felipe Leme, Principal Engineer ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 2. ICEfaces is… ICEfaces is an Ajax framework that allows you to easily create server-centric Rich Internet Applications (RIA) in pure Java. • Open source • Standards-based • Extends JSF • Develop RIAs in pure Java, not JavaScript • Leverages existing Java ecosystem – Use existing IDE – Deploy to any App Server – Combine with leading Java frameworks – Enrich existing JSP applications Path of least resistance for Java developers ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 3. Java EE Architecture ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 4. Java EE Architecture + ICEfaces Standards-based Java EE/JSF Development Model ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 5. Direct-to-DOM (D2D) DOM Ajax Bridge (Client) DOM (Server) Incremental DOM Updates Direct-to-DOM Delivers Automatic Ajax ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 6. Golden Gate Demo ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 7. HTTP And The Asynchronous Web • Normal HTTP Interaction Is User-initiated • Push Requires Inversion of the HTTP Protocol ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 8. ICEfaces Push Mechanism Server Browser DOM DOM 3 DOM Update JSF App. 5 DOM Updates 4 Response (contains incremental update) Processed AJAX AJAX Bridge 1 Asynchronous XMLHttpRequest Bridge Application 2 State Change Another Request 6 10/10/08 Proprietary 8 ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 9. ICEfaces Makes Push Simple • Configure Render Hub …requestRender() Push managed bean Render Hub • Register and populate render groups In Progress In Progress Waiting… Push Waiting… • Request a render from application logic • Framework does the rest Push ICEfaces Application ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 10. Scalability Of Ajax Push • Long-lived Connections per Client – Leads to thread exhaustion under standard Servlet model • Standards Lagging – JSR 315 addresses asynchronous communications • Open Source Solutions Exist – Jetty 6 Continuations – Tomcat 6 Comet Processor – Glassfish Grizzly – ICEfaces Asynchronous HTTP Server ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 11. C3 Demo ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 12. What Are The Implications Of Mobile Ajax? • Resource-constrained Devices – Smaller footprint browser implementations – Limited memory for client-based applications • Limited Network Bandwidth – Application startup times • Network Latency – Application startup times – Server interaction delays • UI Paradigm Shift – Small real estate display – Alternate input devices ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 13. Advantages Of ICEfaces For Mobile • Resource-constrained Devices – Lightweight client-side implementation • Limited Network Bandwidth – Small JavaScript means shorter load times – Minimal incremental updates • Network Latency – Ajax Push reduces hands-on user interaction • Security – Inherit Java EE Security Architecture ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 14. incidentOS Demo ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 15. ICEfaces Portal Integration • Markup Aggregation Within Portal Container – Standard JSF support • Ajax Interactions Bypass Portal Container – Eliminate Full-page Refresh • JavaScript Coexistent With Portal Container – Vendor-specific Portal • Multiple Portals Supported ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 16. Ajax Push With Portals Portlet Portlet Portlet A View B View C View • Browser Connection Limits AJAX AJAX AJAX – Browser-side Connection Sharing Bridge Bridge Bridge • Multiple Web Applications – Server-side Connection Sharing Non-Blocking Blocking Non-Blocking Connection Connection Connection AHS Portlet B Portlet Portlet C A JMS Multi App/ Multi Portlet ICESOFT TECHNOLOGIES INC. www.icefaces.org
  • 17. Q and A Stephen Maryka, CTO ICEsoft Technologies Inc. smaryka@icesoft.com Join us at: www.icefaces.org Or come visit us at our booth. ICESOFT TECHNOLOGIES INC. www.icefaces.org