About software development for the enterprise. Focus on Java EE and more general Java platforms.
You'll read a lot about Conferences, Java User Groups, Java EE, Integration, AS7, WildFly, EAP and other technologies that hit my road.

Friday, January 7, 2011

GlassFish 3 vs. JBoss 6 - Is the Web Profile ready for the Enterprise?

10:47 Friday, January 7, 2011 Posted by Markus Eisele
, ,
Wow. We still are in the holiday season and the emotions rise with the announcement of the latest JBoss AS 6 release. My valued friend Arun Gupta did a post about "Which Java EE 6 App Server ? - JBoss 6.0 or GlassFish 3.x" a few days ago an today Anil responded with JBoss AS6 vs Glassfish 3.x. It's obvious that even both names GlassFish and JBoss are mentioned in the topics and the discussion seems to be about having clustering support or a well documented users guide, I believe, that all this is basically about the value of the Java EE 6 Web Profile for Enterprise Applications.

What's the Web Profile?
If you refer to my post from last year, its thought of as a minimal specification, so a vendor is free to add additional services in their concrete implementation. A more complete comparison about what's contained in it could be found on glassfish.org.
Some of the most basic parts of Java EE are missing in it. Some very important parts are:
- JAX-WS 2.2
- JMS 1.1
- JavaMail 1.4
- Full EJB 3.1 API
Even if @AdamBien states, that "webprofile + JAX-RS + JMS -> should be sufficient for 90% of all projects." I personally believe, that there is more missing. One very simple example are the TimerBeans, that simply are not contained in the EJB 3.1 lite version. Same is true for JavaMail. Tell me about any application not sending some kind of mail to it's users.

What does Enterprise Software development mean?
Beside the technical parts, there obviously is more to enterprise grade software development. Essential parts are:
Having ...
- a stable Vendor
- a strong history and many references
- a suitable documentation for the products
- the option to buy any kind of support with according SLAs
- the option to integrate the products into the existing environments.
And many others. I know about comparison sheets containing more than 500 points for one individual enterprise.....

So, now: What's the right decision: JBoss or GlassFish?
Having all this in mind and trying to compare both distributions, it simply is clear, that the JBoss AS 6 release is a Web Profile only version. GlassFish 3.x is a Java EE 6 full stack implementation. Beside this there are obvious differences in the other parts, I consider important for enterprise grade usage. Everybody is free to make it's own comparison on the relevant parts for both servers. Without being able to make this too detailed for public reference I can state, that for now and the actual available releases of both servers GlassFish is the leader in terms of being suitable for an enterprise grade production environment relying on Java EE 6. And this is explicitly not a comment on technical quality or even the vendor. It's simply my own opinion about Web Profile vs. Full Stack and their use within the enterprise.

For me, this would be a great point to focus again. JBoss guys on quickly developing and delivering their full stack version and Oracle to proof that they are willing to stabilize the Java EE and GlassFish community and push their product forward.