Wednesday, October 22, 2008

    And the Winner Is...


    1. First and foremost, JBoss has the best community. Documentation exists for all facets of using JBoss, from developing on it to deploying it to a production environment. Most of these docs exist in Wiki form on the website, but a Google search of any term prefixed by JBoss (ie: JBoss Administration) will return many, many relevant links. This in and of itself is the primary factor for using JBoss.
    2. While GlassFish provides the latest in JEE 5, JBoss is not far behind (actually having a release candidate with JEE 5 support available). Further, we will most likely not be harnessing a lot of the JEE 5 specification. What we will be using of the JEE 5 specification, mainly JSP and Servlet are provided, along with a JAX-WS compliant stack in the form of JBossWS.
    3. JBoss has an Eclipse plugin (as does GlassFish).
    4. JBoss’s system requirements are lower than GlassFish’s.
    5. While GlassFish’s admin console is very nice and very polished (specifically it’s log viewer), the lack of being able to run in a console window is constrictive to development. From a developer productivity standpoint, having to open up a web page and refresh the view to get the latest log files would be detrimental.
    6. Hibernate, the ORM solution we will be using, is a JBoss project, and is built directly into JBoss.

    The choice came down to JBoss vs. GlassFish. I never really considered Tomcat with Metro.

    While I really liked GlassFish, it didn't seem as suitable for a development environment. Both of them seemed completely competent in a production environment, with each having its best features. So, it came down to which would be better to develop on.

    The answer to that question is that JBoss is easier to develop on and it has the most widely available community. Those two factors weighted things to JBoss.