Apache TomEE, pronounced "Tommy", is an all-Apache Java EE 6 Web Profile certified stack where Tomcat is top dog. Apache TomEE is assembled from a vanilla Apache Tomcat zip file. We start with Tomcat, add our jars and zip up the rest. The result is Tomcat with added EE features - TomEE.

You can now have Dependency Injection, Configurable Transactions and Security and much much more, coupled with blazingly fast develop-deploy-test cycles!!
Download TomEE from here - Downloads. If you have any questions, feel free to send an email to users@openejb.apache.org

Goal

Get more from Tomcat without giving anything up.

Technology Stack

Following is the technology stack supported in TomEE:

CDI

Apache OpenWebBeans

EJB

Apache OpenEJB

Javamail

Apache Geronimo JavaMail

JPA

Apache OpenJPA

JSF

Apache MyFaces

JSP

Apache Tomcat

JSTL

Apache Tomcat

JTA

Apache Geronimo Transaction

Servlet

Apache Tomcat

Apache TomEE Plus

TomEE Plus adds support for the following, over and above TomEE

Connector

Apache Geronimo Connector

JMS

Apache ActiveMQ

Web Services

Apache CXF

The philosophy - Keep it Tight, Keep it Simple

There's a definite "less is more" philosophy in Apache TomEE. We're not here to create an ultra flexible, super powerful, infinitely composable, be anything to anyone platform. We're here to

  • deliver Java EE 6 Web Profile in the simplest way possible.
  • make the developers life easier

If you were to imagine taking a plain Tomcat install and integrating the missing components in the most direct and to-the-point style possible, you'd end up with TomEE. The result speaks for itself:

  • Runs without any additional memory requirements
  • Compatible with Tomcat-aware tools
  • Compatible with Tomcat-tested apps

Focuses

Some core focuses guide the integration:

  • Don't mess with Tomcat
  • Keep it simple
  • Avoid architecture overhead
  • Allow users to get the job done

History

In Apache TomEE's previous life, it was simply known as the OpenEJB+Tomcat integration. That description was always quite misleading. For one, there's incredible benefit even if EJB is never used.

Quite simply, EJB as a technology integrates with the most number of specs than any other spec. It touches JMS, Web Services, Connectors, Servlets (EJB Web Services are still driven by Servlets!), JPA, JDBC, Transactions, Security. Integrating with all these technologies takes time and expertise and in the end has very little to do with EJB specifically. To apply this all to Tomcat and leverage it all from a simple Servlet is a natural extension and the reason most app servers started out as EJB servers.

Whereas most app servers pluck Tomcat out of its environment, Apache OpenEJB has always existed as an embeddable container focused on being as tiny and invisible as possible. The natural extension of this is to embed the "EE" into Tomcat, rather than the other way around.

But in the end, it is not about EJB. It's about the other guys: ActiveMQ, CXF, MyFaces, OpenJPA, OpenWebBeans, and of course Tomcat! So out with OpenEJB+Tomcat and in with Apache TomEE!

  • No labels