J2EESupport

Revision 1 as of 2008-05-28 12:56:23

Clear message

Ubuntu server J2EE support options

Tomcat 6

Type :

Servlet container

Builds from source :

Yes, with openjdk (not with gcj -- missing J2SE 1.5 Socket.setPerformancePreferences methods)

Packaged :

no. Need to workaround Ant download

Maintainability :

good

Compatibility :

Servlet/JSP 2.5/2.1

Release cycle logic :

none

Version :

6.0.16

Notes :

  • Tomcat is downstream of Glassfish.
  • Lost contributers from Sun.

Tomcat 5.5

Type :

Servlet container

Builds from source :

yes

Packaged :

yes (5.5.25 in Universe)

Maintainability :

good

Compatibility :

Servlet/JSP 2.4/2.0

Release cycle logic :

none, bugfixes only

Version :

5.5.26

Current package problems :

  • dependency on JRE (java2-runtime), should be on JDK (java2-compiler) (LP: #179447, #112626)
  • file permissions incompatible with admin interface (LP: #234127, #220871)
  • incompatibility with openjdk (LP: #229404, #212521)
  • 5.5.26 needed to fix CVE-2007-5333 (LP: #220540, #228665)

Additional packages needed in main to build :

  • libcommons-daemon-java
  • libcommons-digester-java
  • libcommons-el-java
  • libcommons-fileupload-java
  • libcommons-httpclient-java
  • libcommons-launcher-java
  • libcommons-modeler-java
  • libstruts1.2-java

Geronimo

Type :

Modular (Servlet container or J2EE application server, uses Tomcat or JeTTY)

Builds from source :

not with OpenJDK6

Packaged :

no. Uses Maven.

Maintainability :

fair

Compatibility :

J2EE v5 since Geronimo 2.0.1

Release cycle logic :

"release often" (every 2-4 months)

Version :

2.1.1

Notes :

  • Robust
  • Right featureset/Ubuntu-style management options
  • Increasing marketshare
  • Modular design. Technologically on par with JBoss and Glassfish v+1.
  • Good upstream maintenance relationship.

Running Geronimo binary :

  • Does not run with OpenJDK-6 (keystore issue). Requires Sun JDK >=1.5

  • Nice admin UI

Building Geronimo :

  • Should be built as modular packages with a few metapackages (geronimo-miniG-tomcat, geronimo-J2EE-tomcat...)
  • Maven-based build process pulls lots of deps in ~/.m2 -> difficulty to debianize

  • Very (really) slow using gcj - aborted
  • Fails to build using openjdk-6-jdk, even if overriding the version check
  • Geronimo recommends building with Sun's JDK 1.5.

Glassfish v3

Type :

Modular (Servlet container or J2EE application server)

Builds from source :

No ?

Packaged :

No (uses Maven)

Maintainability :

good

Compatibility :

J2EE v5

Release cycle logic :

Version :

Does not exist yet (August ?)

Notes :

  • Includes Felix

GlassFish v2

Type :

J2EE application server

Builds from source :

no (being worked on) ?

Packaged :

in Multiverse (v2)

Maintainability :

good

Compatibility :

J2EE v5

Release cycle logic :

Version :

JBOSS

Type :

J2EE application server

Builds from source :

?

Packaged :

no. Only JBoss Common in Universe

Maintainability :

??

Compatibility :

J2EE v1.4 as of JBOSS 4

Release cycle logic :

~ twice a year

Version :

5.0 "really soon"

Notes

  • Questionable maintenance relationship.

JeTTY 6

Type :

Servlet container

License :

Apache 2.0

Builds from source :

?

Packaged :

yes, in Universe

Maintainability :

good upstream

Compatibility :

Servlet/JSP 2.5/2.1

Release cycle logic :

Version :

JOnAS

Type :

J2EE application server

Builds from source :

?

Packaged :

no

Maintainability :

?

Compatibility :

J2EE v1.4 as of JOnAS 4.4

Release cycle logic :

Version :

Notes :

  • Decreasing marketshare
  • Not sure of upstream maintainability.

Resin

Type :

?

Builds from source :

?

Packaged :

No

Maintainability :

?

Compatibility :

?

Release cycle logic :

Version :