I've had an opportunity to work on a full J2EE application server lately. I really haven't done a lot of full-on J2EE stuff in a long while (2001), staying with servlet containers and lightweight solutions like Hibernate and Spring. In this new effort, I wanted to investigate messaging within the J2EE realm, using message-driven beans and perhaps web services to facilitate loosely coupled messaging. I did my initial work on JBoss 4.0.3 SP1. Nothing earth-shattering here--I was able to develop and iterate through my spike solution in very short order. JBoss just works and the free online documentation has actually gotten much better, so things went well here. I expected this sort of user experience from JBoss and I think its a testament to where JBoss is today and the journey it has travelled to get to this point. I have a lot of confidence in JBoss as a J2EE platform.
I then attempted to take my existing spike solution and move it to WebSphere 6.0. Wow! This was not the user experience that I expected. I've heard from many of my colleagues that WAS is extremely difficult to work with in development and you had better be using WSAD if you expect to be semi-productive in the WebSphere world. But this was WAS 6.0 and things will be much better with this new version of WAS. Hmmmm. The short story is no, it's still tedious to work with WAS 6.0 and you had better be using Rational Application Developer (aka WSAD) if you plan to do anything with WAS 6.0. Very frustrating, especially since the J2EE spec seems to have slowed down and vendors should be improving their products with increased productivity advances. I was not able to move my spike solution to WAS 6.0.
Finally, I got WebLogic 9.0 involved. I easily took the spike solution and migrated it to WLS 9.0, and JMS configuration was as easy as it was in JBoss. Autodeploy/hot deploy worked as well (and was quick). I was also able to do all my development in IntelliJ IDEA--WLS and JBoss did not force me to a specific IDE to complete my work. Overall, I experienced excellent out-of-the-box experiences with newest versions of JBoss and WebLogic. I will also mention that both JBoss and WebLogic were running on Java 5 JVMs (used both Sun and BEA JDKs). WebSphere 6.0 is still at 1.4.2, which is another annoyance.