SlideShare une entreprise Scribd logo
1  sur  39
Télécharger pour lire hors ligne
Developing Web Applications
        of the future
              -
 Combining JEE 6 & JavaFX
Goal of this talk



            New features in JEE 6
            Mixing JEE 6 and JavaFX
            A look into the near future
About me


Paul Bakker
                         EJB 3
 Trainer Info Support    JSF
 NLJUG speaker           Seam
                        JavaFX
 Java Magazine author
                        Spring
                        Hibernate
                        Flex
Outline


JavaFX web applications
JAX-RS RESTful services
Connecting JavaFX to services
One minute JavaFX intro


Sun’s RIA platform
  Competes with Flex, Flash and Silverlight
A new language
  JavaFX Script
  Declarative UI programming
JavaFX key features


Expressiveness
Easy component creation
Animation
Java integration
Media support
Write once, run anywhere...
Current problems



No components!
No layout managers
No selectable text
Tooling
JEE 6 ingredients

Profiles
EJB 3.0 => 3.1 (Lite)
JSF 1.2 => 2.0
JPA 1.0 => 2.0
JAX-RS => New!
WebBeans => New!
Using JEE 6



GlassFish V3
 EJB3.1, JSF 2.0 and JAX-RS
 No WebBeans, Servlet 3.0 and JPA 2.0 yet
 Only WAR deplyment
JEE 6 & JavaFX
          Browser
Desktop

                        JavaScript
JavaFX        JavaFX                 HTML

                             HTTP
          Server


             JAX-RS                   JSF
                          EJB 3

                           JPA
2.0 highlights
             JSF


Facelets
Annotation support
  e.g. @ManagedBean
AJAX support
Resource loading
Project Stages
Integrating JSF & JavaFX


JSF renders to HTML
  Use <applet> tag
  JavaScript for communication
All text oriented functionality => JSF
All flashy stuff => JavaFX
Full page JavaFX


Too limited at this moment
  Navigation, bookmarks, scrolling...
Will be an option in future versions
Ok for Swing / Desktop
JavaFX brower integration


AppletStageExtension
  Browser navigation
  Script evaluation
Call JavaScript methods
JavaFX calling JavaScript
Server url


JavaFX uses web services to connect to the
server
Do not hardcode the server url
Use FX.getParameter
JSF page initialization

Use @ManagedProperty to inject a request
parameter



Use @PostConstruct to initialize values
JFXtras


Layout Managers
 MigLayout port
Compontents
Dialogs
Unit Testing

   http://code.google.com/p/jfxtras/
MigLayout example
JEE 6 & JavaFX
          Browser
Desktop

                        JavaScript
JavaFX        JavaFX                 HTML

                             HTTP
          Server


             JAX-RS                   JSF
                          EJB 3

                           JPA
JAX-RS



Expose RESTful web services
Annotation based
Easily combined with EJB and JPA
 But no @EJB injection (yet)
RESTful intro


Web style web services
Resources over HTTP

Uniform Interface        Connectedness

 Addressability           Statelessness
JAX-RS



@Path
 Resource class root path
 A sub-resource
JAX-RS


@GET
 Method handling GET requests
@Produces
 Content type supported
@PathParam
 Extract value from URI template
Using JPA




Use out-of-container JPA confguration
Use EJB (Lite) Session Beans Lookup
  Global JNDI namespace
  @EJB
Use Session Bean as resource
  Might not be in JEE 6
JEE 6 & JavaFX
          Browser
Desktop

                        JavaScript
JavaFX        JavaFX                 HTML

                             HTTP
          Server


             JAX-RS                   JSF
                          EJB 3

                           JPA
lite
           EJB 3


No interface required
Runs in the web profile
No Message Driven Beans
No remote interface
No Timer service
No EJB 2.x compatibility
EJB 3.1 lite Session Bean
Global JNDI namespace



A portable namespace
java:global[/<app-name>]/<module-name>/
<bean-name>
Using Global JNDI

MobileShopServices.war
Converting




               Resource    Entity
Request




                          Converter
                 XML
Response

                             JAXB
Converting Entities


Each Entity has two converters
  A single Entity converter
  A list converter
A JAXB annotated wrapper class
Converter example
JavaFX web service API


JavaFX style HTTP calls
Pull style parsing
  XML and JSON supported
REST only (no SOAP)
JavaFX Production Suite


           Designer => Developer
                Workflow
Production Suite
            Workflow

                   Place all    Replace
Photoshop        elements on     dummy
                    scene       elements




                       Add      Add action
                    animation    handlers
More about this


June 29: Summer Class
Bert Ertman & Paul Bakker
More about this


June 29: Summer Class
 JSF 2.0
 Servlet 3.0
 EJB 3.1 (lite)
 JPA 2.0
 WebBeans
 JAX-RS
 JavaFX (including new beta)

Contenu connexe

Tendances

108 advancedjava
108 advancedjava108 advancedjava
108 advancedjava
Anil Kumar
 
Advanced java
Advanced java Advanced java
Advanced java
NA
 

Tendances (20)

PPT on JAVA
PPT  on JAVA PPT  on JAVA
PPT on JAVA
 
Java Web Programming [7/9] : Struts2 Basics
Java Web Programming [7/9] : Struts2 BasicsJava Web Programming [7/9] : Struts2 Basics
Java Web Programming [7/9] : Struts2 Basics
 
Ejbandjsp 200119145750
Ejbandjsp 200119145750Ejbandjsp 200119145750
Ejbandjsp 200119145750
 
JavaFX Presentation
JavaFX PresentationJavaFX Presentation
JavaFX Presentation
 
Ejb and jsp
Ejb and jspEjb and jsp
Ejb and jsp
 
Component Framework Primer for JSF Users
Component Framework Primer for JSF UsersComponent Framework Primer for JSF Users
Component Framework Primer for JSF Users
 
108 advancedjava
108 advancedjava108 advancedjava
108 advancedjava
 
Java EE Introduction
Java EE IntroductionJava EE Introduction
Java EE Introduction
 
JSF 2 and beyond: Keeping progress coming
JSF 2 and beyond: Keeping progress comingJSF 2 and beyond: Keeping progress coming
JSF 2 and beyond: Keeping progress coming
 
J2EE and Servlet
J2EE and Servlet J2EE and Servlet
J2EE and Servlet
 
Jdbc connectivity
Jdbc connectivityJdbc connectivity
Jdbc connectivity
 
Jsp tutorial
Jsp tutorialJsp tutorial
Jsp tutorial
 
Introduction to Alfresco Surf Platform
Introduction to Alfresco Surf PlatformIntroduction to Alfresco Surf Platform
Introduction to Alfresco Surf Platform
 
Jdbc
JdbcJdbc
Jdbc
 
XPages Workshop: Concepts And Exercises
XPages Workshop:   Concepts And ExercisesXPages Workshop:   Concepts And Exercises
XPages Workshop: Concepts And Exercises
 
Jsf2.0 -4
Jsf2.0 -4Jsf2.0 -4
Jsf2.0 -4
 
Jdbc
JdbcJdbc
Jdbc
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
 
Advanced java
Advanced java Advanced java
Advanced java
 
Java Server Faces (JSF) - Basics
Java Server Faces (JSF) - BasicsJava Server Faces (JSF) - Basics
Java Server Faces (JSF) - Basics
 

Similaire à Web Applications of the future: Combining JEE6 & JavaFX

Similaire à Web Applications of the future: Combining JEE6 & JavaFX (20)

Java EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The FutureJava EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The Future
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011
 
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
Java Enterprise Edition 6 Overview
Java Enterprise Edition 6 OverviewJava Enterprise Edition 6 Overview
Java Enterprise Edition 6 Overview
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
GlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and FutureGlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and Future
 
Java EE 6 Aquarium Paris
Java EE 6 Aquarium ParisJava EE 6 Aquarium Paris
Java EE 6 Aquarium Paris
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SE
 
Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
Java EE6 Overview
Java EE6 OverviewJava EE6 Overview
Java EE6 Overview
 
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
 
Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 Workshop
 
J2EE jsp_01
J2EE jsp_01J2EE jsp_01
J2EE jsp_01
 
J2 Ee Overview
J2 Ee OverviewJ2 Ee Overview
J2 Ee Overview
 
JSF and Seam
JSF and SeamJSF and Seam
JSF and Seam
 
Jspx Jdc2010
Jspx Jdc2010Jspx Jdc2010
Jspx Jdc2010
 
Java EE7 Demystified
Java EE7 DemystifiedJava EE7 Demystified
Java EE7 Demystified
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexus
 

Dernier

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Web Applications of the future: Combining JEE6 & JavaFX