Disclaimer: This entry has been written while listening to the talk. Please forgive me any typographical or grammatical errors resulting from this approach.
Adam Bien is going to talk about the future of Enterprise Java. As we as QuinScape switched (mostly) to Spring in order to avoid the hassle of Enterprise Java and provide more benefit for less money to our customers I am looking forward to Adams statement since he is really one of those guys who just “get Enterprise Java”. I just wish Sun would have had more luck with that technology as a whole…
Adams initial points can be summarized as
- EJB is not going to die… soon.
- Java 7 will change everything (due to the modules system and the ensuing changes to classpath handling).
- J2EE is going to die and that is good since it’s from 1945… or so.
- JavaEE is becoming more and more popular.
Java EE 5 is established for more than 3 years and very established. It’s due to its annotation based nature also very portable (WORA, write-once-run-anywhere) and these applications can be very lean (e.g. 8k for a demo application). Also all major IDEs now support Java EE 5. 14 (!) application server vendors currently support the standard.
Comparing Spring to EJB over the course of five years, EJB is losing ground seriously but Spring is remaining constant – although on a level or two below EJB.
Adam proceeds to show many examples for EJB 3.1, JPA 2.0, JSF 2.0 and more to illustrate how little code remains to be written these days. I agree with Adam – there is very little that remains to be thrown out except for some characters in annotation names 😉 He also notes that cloud technology definitely has arrived although he doubts that many banks or insurance companies in Germany are going to switch quickly – currently most of those clients are very happy with their databases behind the firewall and all. Tooling support naturally is very important to be able to use clouds in real world scenarios.
As a strategy Adam recommends using the bare minimum you need (something I also recommended in my talk this morning), testing various servers to prevent vendor lock-in and trying to get by with the basics. Interestingly OSGi is one of the things that Adam believes to have very little impact as it according to his view only is a solution for a very small class of problems. Many clients even do not want to enhance the dynamic behaviour of their deployed enterprise applications.
He predicts that
- Java EE 6 will gain more momentum,
- EJB 3.1 will become very popular even for small projects,
- JSR-299 and JSR-330 will handle the DI question,
- JAX-RS (JSR-311) and REST will become very popular,
- OSGi will become a standard in JSR-294,
- Java EE 6 will become a very popular platform together with Spring, Guice, etc.
- Scala will also continue to grow, although it will not be dominant.
Open is the question what will come out of Sun and Oracle… but that has to be seen.
Finally he presented the successes of Fabiane Nardon already mentioned in my last blog entry. Still impressive 😉 Thanks to Adam for an interesting and informed opinion about Java EE 6 and consorts.