HOME JAVA & JEE OPEN SOURCE .NET WEB & RIA CLOUD & GRID ARCHITECTURE & DDD AGILE PM & SCRUM AGILE TESTING & BDD OS, MOBILE & SERVER  
JAVAWUG:A RIA Solution to Reinvigorate Your Desktop
A RIA Solution to Reinvigorate Your Desktop
This talk will be an introductory and overview of the Compiled JavaFXtm, which is Sun Microsystem's attempt to (re-)enter the Rich Internet Area space. JavaFX is competing with the other top two RIA solutions, namely: Microsoft's Silverlight and Adobe Flex.

Why should you as developer get into JavaFXtm?
  • JavaFX is different, because it integrates with Java. You as a developer, therefore, have the freedom to use open source and commercial Java libraries.
  • It has its own declarative language for defining user interface elements instead programming with XML.
  • JavaFX has a default profile that builds on the Swing components, which is already known to experienced Java SE programmers.
  • JavaFX can playback video and audio files for the first time ever with the forthcoming Java Media Component (JMC) apis.
  • AJAX is fine for a lot of applications, but as more richer functionality is required then a true RIA solution may just be your ticket to ride.
  • The smart trend in computing today is to focus on usability. You cannot develop user interfaces with Middleware solution.
  • If you have exhausted the possibilities with traditional web framework approach, then RIA might be the way forward.
Java was the first platform with a RIA. It was called in 1996 an Applet. This was a fabulous innovation and was the first example of embedding an mini application into a HTML web page. Unfortunately Sun took its eyes off the prize, when Java exploded in popularity on the server side. Much to the chagrin of several early enthusiastic user interface developers, the company invested its limited resources and expertise in enterprise services. There is absolutely no doubt at all that Java is huge on the enterprise.

During the barren years, Sun made some valiant attempts to improve the desktop experience by producing the heavyweight Java Plugin. After that it came out with the Java Web Start to help solve the client/desktop experience. Some might say that Sun is way too late to the game and that Adobe have the mindshare to hold on to the desktop market sector indefinitely. On the other hand, Java runs on a hundreds of mobile phones and devices. Several bluechip and fortune 500 companies rely on Java to shield them from the pointer bugs and other memory problems, because Java was one of the first languages available to use a garbage collector. It also innovated by running byte codes on a runtime virtual machine.

Admittedly Java does not at this time of writing execute on Apple's iPhone. However, there is a lot interest in Google's Android platform, which based on the syntax of Java. So Java is here to stay for a decade at least. JavaFX is the next step up and focus attention again on the user interface.

The other big problem with Java is the size of the download. The runtime was way to big to be transported across the wire to clients in comparison with Adobe's Flash solution. The trouble was also that the Java Runtime Environment was monolithic and very much unmodularised. There was huge install time. In the last year, Sun has made significant in-roads in these deployment problems. It announced the "Consumer JRE" (Java SE 6 Update N) that included many initiatives such QuickStarter, a Java Kernel, a Deployment Kit and hardware accelerated graphics improvements. The Consumer JRE underlines the importance of JavaFX. If the runtime is modular, deployable and efficient to launch, then maybe it makes Java on the client more viable for users. JavaFX builds on the Java runtime, so it takes advantage of performance and innovations that lie therein.

JavaFX is aimed at media conscience developers and content designers. It is a simplified language. It compiles also to byte codes and the biggest innovations are just around the corner. JavaFX also steps away from the traditional user interface box model. It uses the SceneGraph API underneath to perform graphical drawing. It defines timelines and animation. You have learnt all about architecting the server side. Now come along and learn how to invogorate the desktop again. Create the dashboards and UI clients that you have always wanted to create for your employer, your business clients or your own web 2.0 applications.

As Charles Lowell exclaimed on the popular Drunk and Retired Podcast, Parental Guidance Advised (Episode 127 - Puppet, Skinless Bodies, Rational Tools, Getting Sick of Ajax Episode [Episode 127 MP3 ReferenceTime: 00:27:12]):

"I have been looking at Flash ... Flex. I have been looking at JavaFX. I have to say on the JavaFX front, [that] I am not so convinced about the technology. I mean I haven't look into it that much, but I really, really, really... I really like the JavaFX script. Oh dude, I don't know how they [Sun] snuck that language through the door, but it's a doosey. I would almost call it avant garde."

"... I don't know if they [Sun] got some old Lisp pro[grammer] working on it or they brought in somebody from the Haskell world ..."

"I consider it an advance."

So the question is, when will you decide to learn something about Rich Internet Applications? Even if it is not JavaFX, but some other solution such CURL. Middleware is the junk architectural tier that fits in between the database, the server cloud and the front-end user interface. Many developers are focusing again on the user interface, because it is the component of the system that allows the users to get their job done quicker. Middleware solutions are simply not plausible for creating usable systems.

So let the battle of RIA commence!

ABOUT PETER PILGRIM
A Java Champion and senior JEE Architect, Peter Pilgrim is the leader of the Java Web User Group (JAVAWUG) and a very active contributor to the Java Web and Open Source Community.
More about Peter Pilgrim
Podcast coming soon: BOF 39 JavaFX: A RIA Solution To Reinvigorate Your Desk,
JAVA & JEE PODCASTS
Nicolas Yuen:Accessibility API in Flex, nicolas yuen accessibility API in Flex
Nicolas Yuen : 17th Mar 2010
Podcast Coming Soon: Accessibility API in Flex,
Peter Ledbrook:Grails plugin testing, Grails plugin testing
Peter Ledbrook : 15th Mar 2010
View Podcast: Grails plugin testing,
Richard Dallaway:Lift - Getting started with Scala and Lift, Lift - Getting started with Scala and Li
Richard Dallaway : 8th Mar 2010
View Podcast: Lift - Getting started with Scala and Lift,
Cagatay Civici:PrimeFaces: Next Generation JSF Component Suite, PrimeFaces: Next Generation JSF Componen
Cagatay Civici : 3rd Mar 2010
View Podcast: PrimeFaces: Next Generation JSF Component Suite,
Karl Widmer:Integrating JSF with Spring Web Flow, Integrating JSF with Spring Web Flow
Karl Widmer : 3rd Mar 2010
View Podcast: Integrating JSF with Spring Web Flow,
Toni Menzel:Pax Exam 2.0 – Testing in the Cloud, Pax Exam 2.0 – Testing in the Cloud...
Toni Menzel : 22nd Feb 2010
View Podcast: Pax Exam 2.0 – Testing in the Cloud,
Doreen   Seider: OSGi-based Workflow Engine, OSGi-based Workflow Engine
Doreen Seider : 22nd Feb 2010
View Podcast:  OSGi-based Workflow Engine,
Felix  Meschberger:Declarative Services: Dependency Injection OSGi style, Dependency Injection OSGi style
Felix Meschberger : 22nd Feb 2010
View Podcast: Declarative Services: Dependency Injection OSGi style,
Guillaume LaForge:Scala, Groovy, JRuby, Clojure - Which JVM language is for you?, JVM language
Guillaume LaForge : 22nd Feb 2010
View Podcast: Scala, Groovy, JRuby, Clojure - Which JVM language is for you?,
Jutta Eckstein:Creating Proximity over a Distance, Creating Proximity over a Distance
Jutta Eckstein : 22nd Feb 2010
View Podcast: Creating Proximity over a Distance,
Glyn Normington:dm Server 2.0 , dm Server 2.0
Glyn Normington : 22nd Feb 2010
View Podcast: dm Server 2.0 ,
Colin Howe:Re-writing Java classes in Scala - and making your code lovely, Re-writing Java classes in Scala - and m
Colin Howe : 8th Feb 2010
View Podcast: Re-writing Java classes in Scala - and making your code lovely,
Krestan Krab Thorup:Erjang - A Java Hacker in Erlang Land, Erjang - A Java Hacker in Erlang Land
Krestan Krab Thorup : 3rd Feb 2010
View Podcast: Erjang - A Java Hacker in Erlang Land,
Miles Sabin:A brief introduction to Scala for Java developers, Scala for Java
Miles Sabin : 28th Jan 2010
View Podcast: A brief introduction to Scala for Java developers,
Peter Pilgrim:Professional Code Jam, Professional Code Jam...
Peter Pilgrim : 26th Jan 2010
View Podcast: Professional Code Jam,
OTHER JAVA & JEE EVENTS
David Syer:Core Spring: Developing with the Spring Framework,  Spring Application Development
4 DAY COURSE. Featuring David Syer
London, Tuesday, March 23rd
Ben Gidley Tapestry 5 in Action,  Tapestry 5 in Action
FREE EVENT: In The Brain of Ben Gidley
London, Tuesday, March 23rd
JAVAWUG:JAVAWUG BOF 55 Ease into Scala Web Development, JAVAWUG
FREE EVENT: Ease into Scala Web Developmen
London, Wednesday, March 24th
:Gojko Adzic's Test Driven Java Development Workshop,  Gojko Adzic's TDD Java Development Workshop
2 DAY COURSE.
Paris, Wednesday, March 31st
:Spring OSGi with SpringSource dm Server,  Spring OSGi with dm Server
2 DAY COURSE.
London, Thursday, April 8th
London Scala Users' Group:Scala, Traits & Mixins, London Scala Users' Group
FREE EVENT: Traits & Mixins
London, Monday, April 12th
:Tomcat Primer: Tomcat Administration Fundamentals Training,  Tomcat Administration Fundamentals Training
2 DAY COURSE.
London, Tuesday, April 13th
:Core Spring and Hibernate : Developing Spring Applications with Hibernate O/R Mapping,  Spring Hibernate O/R Mapping
3 DAY COURSE.
London, Wednesday, April 14th
© Copyright 2003-2010, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Community  Community-FR  Apress  1st Teach  Jobs: Sales Executive  Jobs: Student Podcaster  jobs - marketing assistant  Spring Certification