Saturday, March 04, 2006

Java/J2EE - so many choices, but do you want all of them?

Geronimo - no EJB3 support. With BEA's donation of Kodo it might change soon.
JBoss - Usable J2EE server, just be careful not to tread on non-standard stuff.
Glassfish - Sun never had good servers which you can run with limited resources. The beta builds looked ok.
BEA - They 'had' an advantage a few years ago. What are they upto nowadays - Beehive?
Oracle - They seems to be getting their stuff together with Project Fusion, but still noone wants to use their J2EE server. ADF Faces seemed good.
Sun enterprise system - Free, but is anyone using it? Never trust any software which requires 1GB to work.

Hibernate - Works, though there are complexities associated with getting it to work properly in a disconnected scenario. Has good tool support. Opt for EJB3 since it is based on standards.
SCA/SDO - Good stuff in theory, I doubt if Tuscany or anyone can come up with an efficient implementation though. Dynamic model doesn't coexist well with JSF components etc.
MDA - Andro MDA was barely there, got closer.
Seam - Using EJB3 in UI is easy, but proprietary JBoss stuff lingers around too much for comfort. I'd just pick up conversation support from somewhere else.
ADF Faces - Good UI components for free. More AJAX might have been a plus.
Laszlo - Not bad, but lacks the sophistication of Flex wrt look and feel.
Eclipse - good productive IDE, JDeveloper seems good if you are inclined to JSF.
Axis - Seems like they are lost now, Axis2 was promoting a custom model. It was good at one time. XFire seems promising now.
Spring - ok if you want the basic stuff. But, if you find yourself starting to build a J2EE server using spring and Tomcat, maybe it is time for you to switch to a real J2EE server.

Summary: Be careful of the choices you make. Historically, any technology tied to POJO has succeeded in the Java world. So, that might be a safe bet into the future as well.