The Source for Java Technology Collaboration
User: Password:



Jacob Hookom

Jacob Hookom's Blog

JavaOne 2007 - JavaFX, Desktop, and JSF

Posted by jhook on May 08, 2007 at 02:41 PM | Comments (9)

At JavaOne this year, I've decidedly filled my schedule with Desktop track sessions and network-related talks. Everything is becoming more appealing now with Sun's commitment to providing a "Consumer" release of Java SE mid-2008 (expected) which will include fixes/enhancements around webstart, swing, user experience/performance, and finally the inclusion of JavaFX.

Much of this goes back to my previous blog on desktop Java and deployment-- where it's becoming much more appealing for business services. To me, it's not a matter of blurring the user experience, but of optimal data boundaries and scalability of deployment from a features standpoint.

Now, with JavaFX and the potential that it offers (again mainly because of Sun's announced product strategy and commitment), I'm still firmly behind my statement before on JSF 2.0 with pushing for a renewed focus on traditional web paradigms or at least optimizing for it. If we push for even more catering to AJAX within the spec as a rich client solution, I'm afraid that as we spiral down that path-- the ground will come up to meet us fairly quickly out of renewed consumer desktop solutions and changed deployment strategies.

Lastly, when we are talking about specs/JSRs, we aren't creating solutions for now, it's more like two to three years from now. Where will the rest of the platform be going and when will JSF become the optimal choice for all web sites, including things on the scale of eBay or Yahoo?


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • I'm all for the traditional web paradigm fixes in 2.0--better state-saving, Get/REST, etc.--but I think it's a mistake not to build out the enormous potential JSF has to be the backbone of choice for "fatter" client webapps.
    Corporate service portals will go ahead down the Flex/Silverlight/JavaFX route, sure. They'd be nuts not to. When you talk about sites like (the next) eBay or Yahoo, though, you're talking about sites that need to be found by users, which means their content/pages must be indexed and readable by search engines. The fundamental activity of a user opening up a browser and searching the web for information isn't going anywhere. HTML isn't going anywhere. The algorithms may get smarter, but URLs and text that isn't hidden inside a plugin will still be necessary. At the same time, though, the bar will continue to be raised on functionality/complexity of UIs, which means either more Ajax or bits of Flex/Silverlight/JavaFX/whateverComesNext sprinkled throughout the page. A best-of-breed website in 2010 will have to deliver better user experiences, but it'll have to do so while still allowing users to find its content via indexible pages.
    I've always thought that JSF, because of its extensibility points, could be perfect for dealing with this dichotomy. I'm not sure if it'd be a separate Renderkit or just branched code in the renderer, but surely a smart JSF component could deliver indexible HTML content to robots and the regular rich SWF/applet/widget otherwise. When you toss in the need to serve differentially to a growing mobile market as well, you're looking at an extremely complex content delivery problem ... tailor-made for JSF.
    IMHO, the way to future-proof JSF is not so much to avoid catering to Ajax, but rather to abstract away from Ajax as the sole contact point on the client. DynaFaces is a great extension that lets developers build Ajaxified components in a sane, uniform way; there's no reason that it couldn't be extended to, for example, in the case of Flex, allow developers to go off and build their rich SWF widgers, wrap them in a JSF component (which optionally makes the underlying content indexible), and then script back-and-forth interactions by leveraging something like the FABridge Adobe's put out for interacting with the browser. If custom component creation gets sufficiently easy (i.e. tagHandlers go away, better composition), this could become a very natural way to add advanced functionality to a mostly conventional webapp--and to keep the bulk of your business logic server-side where it belongs.

    Posted by: rogers_reilly on May 08, 2007 at 08:03 PM

  • I agree with your last point on JSF-- there's a line to be drawn between catering to AJAX and simply solving it's use cases. Being able to decompose a single view and be able to call into specific components is a huge benefit-- even for pure data services.

    Now, as to how we can efficiently get there-- it's up for debate :-)

    Posted by: jhook on May 08, 2007 at 11:13 PM

  • Pretty much what they MUST do is fix applet startup. If you take Applets, Flash and Silverlight and compare how they start you will notice one difference: Applets lock up the browser container. They render features of the browser unusable. They need to put this on a different thread. How is it possible for MS and Adobe to get around this but not Sun? Even MS needs to load a VM, right?

    Posted by: coding on May 09, 2007 at 10:38 AM

  • Why does everyone always talk about how bad applet start up is, and how it locks up the browser container?

    Am I the only one living in 2007, with a browser, JRE, and hardware acquired within in the last two years? Is everyone else stuck in 1999?

    If you want to talk about true, modern day lock-ups (and since you mentioned Adobe as being so wonderful)... lets talk about what Acrobat Reader does to Firefox. This, friends, is a true year 2007 disgrace. Thank goodness I've switched to OS X- Safari and Preview are a much smoother duo.

    Posted by: bwy on May 09, 2007 at 03:06 PM

  • coding: This is absolutely on our must-fix list. There's a *lot* of great stuff coming in the consumer JRE around deployment. Moving applets out-of-process is only one of them.

    Richard

    Posted by: rbair on May 10, 2007 at 09:09 AM

  • Adobe Reader is the worst plugin in the universe, it ALWAYS locks up my browser, very badly. Not only that, it sometimes locks up asking me to update some random piece of Adobe software. It's horrible, horrible, horrible.


    Chris Oliver showed his slides using his own PDF viewer, written in JavaFX. I posted a small video of it on my blog:
    http://sellmic.com/blog/2007/05/11/javafx-pdf-viewer-demo/

    I rather be using that PDF viewer than Adobe's, hoping Sun releases the demo soon. Or heck, make a replacement reader with it!

    Posted by: augusto on May 11, 2007 at 08:39 PM

  • Whoops, clickable link to post here ...

    http://sellmic.com/blog/2007/05/11/javafx-pdf-viewer-demo/

    This blog software in java.net really sucks!!!

    Posted by: augusto on May 11, 2007 at 08:40 PM

  • Dear M8s,

    Any idea about JavaFX for Mobile devices? I mean, I could find a tutorial like for SWING, but not for the J2ME...

    Can any one help me?

    thanks in advance,
    Rames.P.

    Posted by: ramesp on May 14, 2007 at 10:40 PM

  • What would help JSF enormously and to demonstrate it's full potential, would be to give a couple of examples of JSF to create a plugable rendering kit for Silverlight. Maybe an e-commerce example, a graphics example, etc.

    Posted by: skalvi on August 04, 2007 at 06:24 AM





Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds