Predicting the rise of lightweight REST in Java July 20, 2006
Posted by Jerome Louvel in Java, Restlet General.2 comments
In a previous post, I tried to answer to this question: “Will Java EE 5 bring REST to Java”. On one hand I felt happy with the adoption of some REST concepts within Java EE 5 and its first coverage at a JavaOne conference. On the other hand, the current attempt to retrofit REST into the existing JAX-WS stack seems like a dead end to me.
However, I missed an interesting quote from Tim Bray, the director of Web technologies at Sun Microsystems. While asked for prognostications for Java’s short-term future at the end of 2006 Java Technology Roundtable, he replied:
“I would say that by this time next year there will be increasingly widespread perception that the stack of standards around WS-* has largely failed, and anybody who puts significant tooling and resources, significant energy and investment, into tooling and tools around lightweight, REST-flavored Web services is going to look like a major genius.” Reported by FTP Online. Update: see also this interview where Tim Bray explains his views on SOA, POX and REST.
I do hope that this prediction will come true and that Sun will fully embrace this lightweight REST vision within Java EE 6. We are already working toward this goal with our Restlet project, with a first 1.0 release scheduled for 2006Q4. As detailed in our road map document, we will continue pushing for the adoption of REST and its standardization within the Java community. This should become concrete in 2007 by a submission of the Restlet API to the JCP (Java Community Process).
If you also wish that Tim Bray’s prediction comes true for the next Java One, here are some suggestions on how you could help:
- Create a modelling tool to design RESTful applications. Stefan Tilkov has an interesting proposition on Resource-oriented Design and how to visually represent resources and their URIs.
- Write a book on REST and how to design and develop RESTful web services in Java. Dave Johnson, from Sun, has just published a book on RSS and Atom that contains a chapter on the Atom protocol which is an excellent example of RESTful design.
- Contribute to the Restlet project with comments, ideas, bug reports, testing, code contributions, documentation. See the list of open issues.
- Discuss and blog about REST and how it can help you build better and more Web-centric applications in Java. Manohar Viswanathan has just wrote a nice post on “Developing RESTful Web Services in Java”. He’s illustrating it with an example showing the integration of Restlet, Spring and Tomcat.
If you also think that REST deserves a better place in Java, asks to yourself how you can contribute and do it!
Update: In an interview with Paul Krill of InfoWorld, Robert Brewin, co-CTO of software at Sun Microsystems, has confirmed Tim Bray’s vision that lightweight REST Web Services and Web 2.0 in general are getting a higher priority than ever for Sun.
Java Browser Edition July 6, 2006
Posted by Jerome Louvel in Java.add a comment
I’ve been wondering for years about the reasons of Java’s failure in the Web browsers. Initially, we thought that it was due to Java performance and that improvements in the JVM (JIT, hostspot), faster processor and larger memories would finally allow Java Applets to live up to their promises.
Unfortunately, we were wrong again. As Java evolved, the JRE became larger and larger. In addition numerous integration issues came up which caused some installation and upgrade nightmares. Of course, Microsoft didn’t help in this area, shipping by default an older and non standard JVM with Windows.
There was a recent poll at Java.net on “What’s wrong with applets?” and the results are no surprise: more than 24% thought that it is “too hard to deploy”. Some comments specifically complain about the JRE size, the slow start-up and the unstable integration with some browsers.
But there’s hope, especially because we are at the start of a new wave of Rich Internet Applications with AJAX, Flash/Flex and XUL being the serious contenders. Microsoft also appear to have some competitive technology in Vista.
Is it definitely lost for Java or do we have a chance to catch up? Well, while discussing this topic with friends at the OSSGTP (Open Source Software Get Together Paris), I did some research and found interesting things:
- Ethan Nicholas, while working at Yahoo! came to similar conclusion and posted an excellent note in his blog. His note received many comments and much attention around the Web: see here and hear there.
- Back in 2001, a request for enhancement was filed in Java’s bug database, asking for a modular JRE. The issue was marked as a duplicate of another issue which unfortunately is invisible to the public.
- The JCP is working on a Java Module JSR (#277) which will provide a much needed upgrade to JAR file, addressing issues such as versioning, dependencies or remote update. Stanley Ho, the JSR spec lead, has more info about this effort, see his slides from JavaOne 2006.
The good news:
- Ethan was recently hired by Sun! Congrats Ethan and good luck in this new endeavour.
- Java 7 (Mustang) will include the new Java Module technology specified by the JSR 277.
It seems that Sun has all the elements for a good solution in its hands. Hopefully, we’ll see a modularized Java Runtime Edition 7.0 with a companion Java Browser Edition 7.0 coming out of Sun’s labs!
