Apache Geronimoは、
Apacheソフトウェア財団が開発しているオープンソースのJava Platform, Enterprise Edition (Java EE) 実装です。
Apache Licenseの下で公開されており、無料で利用できます。このプロジェクトは、エンタープライズレベルのJavaアプリケーションを開発・実行するための基盤を提供することを目的としています。
特徴
Java EE準拠: Apache Geronimoは、Java EEの仕様に準拠しており、サーブレット、JSP、EJB(Enterprise JavaBeans)、JMS(Java Message Service)などのJava EEコンポーネントをサポートしています。
モジュール性: Geronimoは、コアとなるGeronimo Kernelを中心に、必要な機能をモジュールとして組み合わせて利用できる柔軟なアーキテクチャを採用しています。これにより、不要な機能を省き、リソース効率の高いシステムを構築できます。
Webサービス: Apache Tomcatを標準のサーブレットコンテナとして採用しており、Webアプリケーションの実行環境を提供します。また、Apache Axis2をWebサービスフレームワークとして利用でき、SOAPベースのWebサービスの開発・実行をサポートします。
オープンソース: Apache Licenseの下で公開されており、自由に利用、配布、改変が可能です。開発コミュニティも活発で、バグ修正や機能拡張が継続的に行われています。
構成要素
Apache Geronimoは、Geronimo Kernelを中心に、さまざまなソフトウェアコンポーネントで構成されています。これらのコンポーネントは、Geronimo Kernelによって管理され、連携して動作します。主なコンポーネントには以下のものがあります。
Geronimo Kernel: Geronimoの中核となる部分で、コンポーネントの管理、ライフサイクル管理、設定管理などを担当します。
サーブレットコンテナ: 標準では
Apache Tomcatが採用されており、Webアプリケーションの実行環境を提供します。
Webサービスフレームワーク: Apache Axis2が採用されており、Webサービスの開発・実行をサポートします。
EJBコンテナ: EJBコンポーネントの実行環境を提供します。
JMSプロバイダ: メッセージングサービスを提供します。
採用事例
Apache Geronimoは、Google App Engineなどのクラウドプラットフォームでも採用されており、信頼性の高いJava EEアプリケーション実行基盤として活用されています。
関連技術
Apache Geronimoを利用する上で、関連する技術として以下のものがあります。
Apache Tomcat: Apache Geronimoのサーブレットコンテナとして採用されているWebサーバー。
Jetty: 以前はサーブレットコンテナとして選択可能だった軽量なWebサーバー。
Apache Derby: Javaで開発された組み込みデータベース。
Apache Axis2: Webサービスの開発・実行をサポートするフレームワーク。
Spring Framework: Javaアプリケーション開発を支援するフレームワーク。
外部リンク
Apache Geronimoのホームページ (英語)
Japan Apache Geronimo Users Groupのホームページ
Apache Geronimoは、Java EEアプリケーション開発に必要な機能を備えつつ、モジュール性や柔軟性に優れたオープンソースのプラットフォームです。エンタープライズレベルのシステム構築から、小規模なWebアプリケーションまで、幅広い用途に対応できます。