Session Report: Demystifying Java EE
By Janice J. Heiss on Sep 25, 2013
Adam Bien, who is not only a Java Champion and JavaOne Rock Star, but
was named in 2010 as Oracle Magazine’s Java Developer of the Year, spoke
to an enthusiastic crowd where he addressed some core issues about Java
EE. He encouraged questions – “The more heretical or offensive the
better.” It was obvious that Bien loves to think about and code in Java.
He remarked, “The more I code the happier I am”. Spoken like a
hard-core Java developer!
First, he asked, “What is Java EE? Innovation vs. Standardization”? For Bien, Java EE is nothing but a release of co-existing APIs. Before Java EE, there was a mess with lots of application servers, with absolutely no chance of finding two application servers with similar APIs. Java EE resulted in a huge simplification. Now with Java EE 7 a wealth of are applications available. Java EE, insisted Bien, was never about innovation because building a standard precludes innovation. “Java EE will always lag behind,” he observed. “For instance, Hibernate will always have more features than JPA. Spring will always have more features than CDI. Java EE is the 80% that makes products work. It was never about innovation.”
He boiled down the whole point of Java EE: “What matters are small WARs – the smaller the WAR, the faster the build and deployment. The faster the build and deployment, the more productive you become,” he insisted. He explained that Java EE enables you to not put everything into the WAR and place as much as possible on the application server and less on the WAR. He explained that most of his WARs in Java EE 6 or Java EE 7 projects are very small
Bien asked, “Are EJBs bloated?” He explained that the question implies some voodoo stuff behind the scenes making EJBs bloated. He offered a means to answer this question.
He went on to answer a wealth of questions in a way that was thoughtful, incisive, witty and, at times, a bit provocative.
Here's some of the topics/issues (pulled directly from his slides) that Adam touched on in this fast-paced session:
*Do we need transactions?
*Is Dependency Injection Black Magic, VooDoo, or both?
*Is EJB pooling needed? Are EJBs bloated? What happens, if you violate the EJB programming restrictions?
*Why AOP didn't take off in Java EE?
*Stateless vs. Stateful programming model?
*HA without a Cluster?
*Are there any POJOs out there? What happens during deployment?
*Is Java EE faster than J2EE? Does JMS 2.0 scale and perform well? Is Java EE only suitable for the "big" enterprise?
*Is JSF the silver bullet? What is the deal with CORBA and RMI?
*How to unit test Java EE applications? Why we don't build a best of breed server from scratch?
This was a lively, entertaining and information-packed session. Just what you would expect from a pro developer as Adam Bien. I highly recommend viewing this session.
Adam Bien’s Blog
Check out Parleys.com where you can listen to the session in early October.