Skip to main content

No Way Out

Posted by editor on June 13, 2007 at 10:45 AM EDT

Where is Rich Internet Application development going?

Simon Morris' blogs never lack for the Big Think, that's for sure. This time he's gone and tried to figure out just what Rich Internet Applications are, given that Wikipedia's definition and list of related technologies are all over the map. Underlying the confusion over just what RIA's are, he identifies three rather snidely-named camps of developer philosophies:

  • Browserism - "the belief that the web browser (or comparable page-centric markup-orientated HTTP-bound middleware platform) is the future of end user facing software; a belief solely based on observation that the web is currently the predominant tool for accessing the internet."

  • Neo-Desktopism - "the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac. The goal of Neo-Desktopism is to evolve traditional desktop application technologies [...] to a point where they can float free of a physical local client installation, deploying on demand just like web pages."

  • Pragmatic Neo-Desktopism - "the belief that the web browser as an end user facing application platform is ultimately an evolutionary cul-de-sac, but we'd all get fired if we admitted that to our bosses."

In the turmoil and competition among these user-facing technologies, Simon gleefully points out some of the most pathological behaviors of the various camps, like the Browserists' delight at their ability to recreate the functionality of a Commodore 64 application from 1984 (like, say, saving data locally), or the Neo-Desktopists' relief when a Java Web Start application actually launches correctly the first time.

Simon's blog, A Rose By Any Other Name, has something to offend pretty much everyone... a sure a sign as anything that he's on to something. It's a great read, and once you're well and duly tweaked, there's a robust discussion to join in the comments section.


Also in today's Weblogs, Eamonn McManus takes a go at Disassembling serialized Java objects. "Presenting Serialysis, a library that allows you to disassemble the serial form of Java objects. This can allow you to retrieve information about an object that is not available through its public API. It is also a useful tool when testing the serialization of your classes."

John O'Conner takes another look at JSR-296 in Swing Application Framework: Lifecycle Events, in which he explains: "every application has a lifecycle of events determined by the framework. Override those event methods to define application behavior."


In our latest JavaOne Community Corner Podcast, David Herron offers an OpenJDK Quality Team Introduction and Discussion. "It takes a village to grow an open source project. Any open source project lives from a wide range of contributions, not just bug fixes, new features, and other changes to the software, but evangelism, user groups, artwork, and more. The OpenJDK Quality Team is being formed by Sun's Java SE quality team to inspire collaboration with the public related to OpenJDK and Java SE quality. The quality team gives you opportunities to create tests, perform test execution, give feedback on current test plans, and more."


In Java Today, John O'Conner has written a new SDN article about Using the Persistence API in Desktop Applications. "The Java Persistence API facilitates your use of POJOs as entity beans and significantly reduces the need for complicated deployment descriptors and extra helper beans. Additionally, you can even use the API in desktop applications. [...] This article describes the Java Persistence API and how to use it in Java SE desktop applications that require object persistence."

Recalling a comparison previously made by Daniel Steinberg, Artima Senior Editor Frank Sommers compares self-networking technologies and their approaches as he wonders Can iTunes Accomplish What Jini Couldn't? "iTunes is far more than a desktop music player and organizer: it is also a path through which over 300 million users have already installed Apple's open-source dynamic networking software, Bonjour. Has the time for spontaneous networking finally arrived?"

In a message in the Java 3D forum, Kevin Rushforth announces Java 3D to go open source under GPL: "We are pleased to announce that the source code for the j3d-core and vecmath projects will be made available under the same open-source license that OpenJDK is now, using GPLv2 plus CLASSPATH exception. This gives software vendors more flexibility is releasing their products. You will be able to choose to use the existing binary SLA license, which will still be available for each fcs release, or you will be able to use the GPLv2 + CLASSPATH license to release your product with a pre-released (daily, alpha, beta) version of Java 3D, or with a version that you modify and build."


In today's Forums, countsessine needs breakpoint-setting help in Netbeans, Swing, and runtime exceptions. "This seems like a trivial problem, but I haven't been able to find this out either by searching this forum or through a google search, so I'm going to ask... How do I break on exceptions that happen in the Swing EDT? If I have an actionlistener that gets called, say on a button press, and I do something silly in the handler that's going to generate a runtime exception, how do I break on that, by default, in the NetBeans debugger? When I try it, all that happens is a stack trace is printed out in the output window. Swing seems to be catching and killing any runtime exceptions I generate and I don't get a chance to see them in the debugger."

djviking has what's probably a widely-encountered problem in Need to handle multiple databases; How to design with Spring? "I have a J2EE Web application with Servlets and Java ServerPages. Beside this I have a in-house developed API for certain services built using Hibernate and Spring with POJO's and some EJB. There are 8 databases which will be used by the web application. I have heard that multiple datasources with Spring is hard to design around. Considering that I have no choice not to use Spring or Hibernate as the API's are using it. Anyone have a good design spesification for how to handle multiple datasources. The datasource(database) will be chosen by the user in the web application."

Finally, carlavmott of the jMaki project is looking for some Feedback on menu data model. "Before we ship a final release of jMaki I'd like to get feedback on the data models for the various widgets. I'm currently working on the jMaki menu data model and have notes on the a href="http://wiki.java.net/bin/view/Projects/jMakiMenuDataModel">[this page]. I wanted to get feedback from users in case something is missing or just wrong. At the bottom of the wiki page I used BNF (more accurately BNF-like) notation to describe the model for the menu. I will try and add a few examples to the page based on the spec to help make things clearer. At this point, I'm asking for feedback on the Menu data model."


Current and upcoming Java Events :

Registered users can submit event listings for the java.net Events Page using our events submission form. All submissions go through an editorial review before being posted to the site.


Archives and Subscriptions: This blog is delivered weekdays as the Java Today RSS feed. Also, once this page is no longer featured as the front page of java.net it will be archived along with other past issues in the java.net Archive.



Where is Rich Internet Application development going?