Geronimo

Geronimo

Apache Geronimo is an open-source Java EE (now Jakarta EE) application server developed by the Apache Software Foundation.

Geronimo 2 is currently compatible with the Java Enterprise Edition (Java EE) 5.0 specification such as JDBC, RMI, e-mail, JMS, web services, XML, Enterprise JavaBeans, Connectors, servlets, portlets and JavaServer Pages. This allows developers to create enterprise applications that are portable and scalable, and that integrate with legacy technologies. Geronimo 3 is compatible with Java EE 6.0.

Like an enterprise operating system, Geronimo is built on a kernel—a microkernel that lays the foundation for everything above it. Geronimo's kernel is Java EE agnostic. Its sole purpose is to manage Geronimo's building blocks. Geronimo is marked by an architectural design that is based on the concept of Inversion of Control (IoC) (sometimes called Dependency Injection), which means that the kernel has no direct dependency on any of its components. The kernel is a framework for services that controls the service life cycle and registry. The kernel is based on Java EE. It works with Java EE services and components to build specific configurations—one of which is a full Java EE solution stack.

The open source components that are included in Geronimo are: Tomcat, Jetty, ActiveMQ, OpenEJB, ServiceMix, OpenJPA, MyFaces, Axis, Scout, CXF, Derby, WADI, MX4J.

Architecture of Geronimo

Geronimo is highly modular. Instead of building everything from scratch, it integrates existing Apache projects.

Key Components

• Web container → Apache Tomcat or Jetty
• EJB container → OpenEJB
• Messaging → Apache ActiveMQ
• Persistence → OpenJPA
• Transactions → Built-in JTA manager

Think of Geronimo as a bundle of best-of-breed Apache tools.

Key Features of Geronimo

Full Java EE Support

Supports:

• Servlets, JSP
• EJB
• JPA
• JMS
• JTA (transactions)

Modular Design

You can swap components like:nTomcat ↔ Jetty

Pluggable Architecture

Built using a plugin system (GBeans)

Open Source

No licensing cost

Why Was It Created?

Back when enterprise Java was dominated by expensive servers like:

• WebLogic Server
• WebSphere Application Server

Geronimo aimed to:

• Provide a free alternative
• Maintain full Java EE compliance
• Be flexible and modular

Advantages

Fully Open Source Enterprise Server

No vendor lock-in.

Modular & Flexible

You can customize components.

Standards-Based

Pure Java EE implementation.

Integration-Friendly

Works well with Apache ecosystem tools.

Disadvantages (Important)

Now Largely Inactive / Deprecated

Geronimo is no longer actively developed.

Outdated Technology Stack

Does not support modern Jakarta EE versions.

Complex Configuration

Compared to modern frameworks.

Replaced by Better Alternatives

Such as:

• Apache TomEE
• WildFly
• Spring Boot

Contents related to 'Geronimo'

TomEE
TomEE
WildFly (JBoss)
WildFly (JBoss)
GlassFish
GlassFish
WebLogic
WebLogic