Java EEとは、Java Platform, Enterprise Editionの略で、Javaによるサーバーで稼動する業務用システム(エンタープライズ・システム)構築のためのアーキテクチャーです。Javaの基本機能を備えたJava SE(Java Platform, Standard Edition)を基盤にし、さらにアプリケーションサーバーにおいて提供されるべき機能の仕様と、その機能をJavaプログラムから利用する方法(API)を定義しています。その仕様には、セッション管理、トランザクション管理、データベース接続、セキュリティーなど、企業向けのアプリケーション構築において一般的に必要になる機能が含まれています。現在、Java EEは、アプリケーションサーバーの事実上の業界標準仕様となっています。
このJava EE仕様を採用すると、以下の様なメリットを享受できます。
- 効率の良いアプリケーション開発が可能になる
- プラットフォームの変更などに柔軟に対応可能になる
- コンポーネントの再利用が促進される
Java EEでは、機能で層を分離する「多層分散アプリケーション・モデル」の考え方を採用することにより、機能の独立性を高め、システムの開発・保守効率、拡張性を向上しています。そのうち、アプリケーションサーバーが提供するのはWeb層とビジネス層の2層です。

図1:Java EEの多層分散アプリケーション・モデル
1. クライアント層
ユーザーインターフェースを提供する層で、Webブラウザーで画面表示及び入力を行います。
2. Web層
ビジネスロジックの処理をビジネス層に依頼し、実行結果を動的に作成してクライアント層に送信します。サーブレット(Servlet)やJSPと呼ばれるJavaのプログラムがこの層で実行されます。
3. ビジネス層
ビジネスロジック及びEIS層へのアクセスを実行します。EJBやJavaBeansと呼ばれるJavaのプログラムがこの層で実行されます。
4. EIS(Enterprise Information System)層
データベースやメッセージング製品、Webサービスと言ったバックエンドでビジネスロジックの実行に必要なリソースを提供する層です。
Java EEとWASの歴史

図2:WebSphere Application Serverの歴史
拡大図
WebSphere Application Server(WAS)は、1998年にV1.1がリリースされて以来、常に最新のJava EE技術に迅速に対応し、Java EEの仕様に完全準拠してきました。これは、IBMがJava EEの仕様策定の多くに参加すると共に、仕様策定をリードしてきた成果によるものです。
初期のWASはサーブレットとJSPのみでしたが、その後WAS V2.0ではEJBにも対応しています。WAS V4.0では、初のJava EE仕様であるJ2EE(Java EEの旧称)1.2に本格対応しました。その後Java EEは、J2EE 1.3(WAS V5.0で対応)、J2EE 1.4(WAS V6.0で対応)とバージョンアップし、サーブレット/JSP/EJBの機能強化だけでなくWebサービスへの対応や管理機能の追加がなされました。Java EE 5(WAS V7.0で対応)では、開発容易性向上のためアノテーションへの対応が実施されました。最新のJava EE 6(WAS V8.0で対応)では、軽量化、さらなる開発容易性向上、Web層の強化などが実現されています。
また、Java EEの実行環境としてWASを利用する事により、Java EEのメリットだけでなく以下の様なメリットを得ることができます。
- 高パフォーマンス
- 高信頼性・高可用性
- 高拡張性
- マルチプラットフォーム対応
- 堅牢なセキュリティー
WAS V8は、最新のJava EE 6に対応しています。Java EE 6では、開発容易性向上が行われています。さらなるアノテーション対応や、設定ファイルの大幅削減、Spring Frameworkなどが提供するDI(Dependency Injection)機能の追加を行っています。さらに、RESTful Webサービスを開発するためのJAX-RSの追加や、 Servlet/JSFといったWeb層の仕様も大幅な機能強化が図られ、新しいタイプのWebアプリケーションも開発可能となります。
WASを利用いただくことで、開発効率が高い最新のJava EE実行環境と、エンタープライズでの利用に耐えうる堅牢なWeb環境を手に入れることができます。
IBM、IBMロゴ、ibm.com、WebSphereは、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点でのIBMの商標リストについては、www.ibm.com/legal/copytrade.shtml(US)をご覧ください。


