105
a RIA Case Study by Stephan Janssen Parleys.com

Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

a RIA Case Studyby Stephan Janssen

Parleys.com

Page 2: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

About me

Page 3: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

About me

‣ Founder ’97 and chairman of the Belgian Java User Group (BeJUG)

‣ Founder ’98 and CTO of JCS Int.

‣ CTO of Java Competence Center @ RealDolmen

‣ Founder ’01 and Organizer of JavaPolis (now Devoxx) and SpringOne

‣ Java Champion since ‘05

‣ Founder ’06 and Project lead of Parleys.com

Page 4: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

What is Parleys.com ?

Page 5: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

What is Parleys.com ?

‣ Next generation RIA eLearning platform

‣ Hosts technical talks from JavaPolis, SpringOne, EclipseCon, JaZoon, JFokus, JavaZone, ...

‣ 250+ hours of technical content

‣ 200K+ unique visitors

‣ 7Tb of video streaming per month

Page 6: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

What is RIA ?

Page 7: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

What is RIA ?

Application Server =

RIA Client =

Page 8: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Architecture Overview

Spring POJOs

RESTJava

PersistenceAPI

RPC

DHTML,JavaFX,GWT,iPhone

Flex &

AIR

JSON

AMF

Page 9: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

6

DHTML

Page 10: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

(C) 1998 - 2007 JCS Int. nv - Member of the Dolmen Group

Demo

Page 11: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

Page 12: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

Page 13: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

Page 14: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

Page 15: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

‣ Debugging JavaScript on Internet Exploder

Page 16: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

‣ Debugging JavaScript on Internet Exploder

Page 17: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

‣ Debugging JavaScript on Internet Exploder

‣ Back button support

Page 18: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

‣ Debugging JavaScript on Internet Exploder

‣ Back button support

Page 19: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

DHTML Issue’s

‣ Voodoo Script !

‣ Cross platform/browser Javascript Spaghetti nightmare!

‣ Debugging JavaScript on Internet Exploder

‣ Back button support

‣ AJAX “calls”

Page 20: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

9

Flex & AIR

Page 21: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

10

DEMO

Page 22: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

Page 23: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!

Page 24: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

Page 25: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

Page 26: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

Page 27: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

Page 28: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

Page 29: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

Page 30: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

‣ Deep linking, History and back button support

Page 31: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

‣ Deep linking, History and back button support

Page 32: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

‣ Deep linking, History and back button support

‣ Good eclipse-based IDE support

Page 33: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

‣ Deep linking, History and back button support

‣ Good eclipse-based IDE support

Page 34: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Advantages

‣ It just works!‣ Flex does already exist for 5 years... it shows :)

‣ Many build in animations available

‣ Many UI components available

‣ Deep linking, History and back button support

‣ Good eclipse-based IDE support

‣ Smart local caching

Page 35: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities

Page 36: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

Page 37: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing

Page 38: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing

Page 39: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

Page 40: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

Page 41: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

Page 42: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

Page 43: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

Page 44: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

Page 45: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

‣ Google Friendliness...

Page 46: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

‣ Google Friendliness...

Page 47: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

‣ Google Friendliness...

‣ Socket Listeners...

Page 48: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

‣ Google Friendliness...

‣ Socket Listeners...

Page 49: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Flex Opportunities‣ Enterprise Development

‣ CI, Unit and Coverage testing‣ Functional Testing‣ Static Analysis

‣ Signed Flex applications ?

‣ Hybrid deployment strategy...

‣ Google Friendliness...

‣ Socket Listeners...

‣ Local video encoding

Page 50: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

13

GWTI feel lucky!

Page 51: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Effects Widgets

DOM CSS/Behavior

XHR Marshalling

JS ext. Packaging

Ajax Client Side Ajax Server Side

AjaxDSLs

XHR

Marshalling

Google Web Toolkit (GWT)

Ajax Style view-centric code-centricmodel-centric

Page 52: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

15

DEMO

Page 53: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

Page 54: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

Page 55: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

Page 56: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

Page 57: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

‣ Works on different browsers/operating systems “out-of-the-box”

Page 58: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

‣ Works on different browsers/operating systems “out-of-the-box”

Page 59: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

‣ Works on different browsers/operating systems “out-of-the-box”

‣ Great tooling support

Page 60: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

‣ Works on different browsers/operating systems “out-of-the-box”

‣ Great tooling support

Page 61: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

GWT Experience

‣ You develop in Java !

‣ Back button works

‣ Works on different browsers/operating systems “out-of-the-box”

‣ Great tooling support

‣ Google friendliness of Google Web Toolkit :(

Page 62: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

17

JavaFX

Page 63: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

18

DEMO

Page 64: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

Page 65: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

Page 66: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

Page 67: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

Page 68: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

Page 69: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients

Page 70: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

Page 71: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

Page 72: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

Page 73: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

Page 74: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

‣ Cool visual effects and animations

Page 75: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

‣ Cool visual effects and animations

Page 76: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

‣ Cool visual effects and animations

‣ Possibility to leverage the JVM!

Page 77: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

19

JavaFX Advantages

‣ Declarative, strong typed “Java” scripting language

‣ Binding & Triggers

‣ Eventually will enable 2D, 3D and media-rich Java clients‣ On2 support in JavaFX Desktop

‣ Swing & Java2D API accessible for Designers

‣ Cool visual effects and animations

‣ Possibility to leverage the JVM!‣ Refactoring of the Swing View and reusing Model & Controller

Page 78: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

Page 79: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

Page 80: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

Page 81: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

Page 82: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

Page 83: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

Page 84: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

Page 85: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

‣ Mac must become first class citizen !

Page 86: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

‣ Mac must become first class citizen !

Page 87: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

‣ Mac must become first class citizen !

‣ Deep Linking

Page 88: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

‣ Mac must become first class citizen !

‣ Deep Linking

Page 89: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

20

JavaFX Opportunities

‣ Tooling support for both Designers and Developers

‣ More default animations/transitions needed

‣ Google Friendliness

‣ Mac must become first class citizen !

‣ Deep Linking

‣ Back button

Page 90: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

21

So what’s next ?for Parleys.com

Page 91: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys.com Share

‣ Embed a talk in your blog/wiki

Page 92: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys.com Share

‣ Embed a talk in your blog/wiki

Page 93: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys.com iPhone‣ Download and view Parleys.com talks on your iPhone

Page 94: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys.com iPhone‣ Download and view Parleys.com talks on your iPhone

Page 95: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

Page 96: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

Page 97: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

Page 98: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

‣ Special University Program

Page 99: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

‣ Special University Program

Page 100: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

‣ Special University Program

‣ FREE User Groups Program !!

Page 101: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

‣ Special University Program

‣ FREE User Groups Program !!

Page 102: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

Parleys Business

‣ Organizations can “Rent a Space”

‣ Special University Program

‣ FREE User Groups Program !!

‣ Licensing of the platform for internal usage

Page 103: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

25

But How ?

Page 104: Parleys.com a RIA Case Studyjaoo.dk/.../StephanJanssen_A_Ria_Case_Study_Using_Javafx.pdfEffects Widgets DOM CSS/ Behavior XHR Marshalling JS ext. Packaging Ajax Client Side Ajax Server

26

DEMO