2000年9月から10月にかけて,5つのAPサーバー製品の新版が一斉に国内出荷を開始した。いずれもJ2EEへの対応を強化している。J2EE完全対応というゴールが同じため,製品間の機能差は見えにくい。APサーバーの特性を生かし,ポータル構築を支援する方向性も一致している。
主要なWebアプリケーション・サーバー(APサーバー)製品が,J2EE(Java 2 Platform,Enterprise Editon)対応で足並みを揃えてきた。2000年9月以降,海外APサーバー製品が相次ぎ,日本国内で新版を出荷開始した。いずれも機能強化の目玉として“J2EE完全対応”を掲げている。J2EEという共通の開発環境により,異なるAPサーバーを利用する場合でも,アプリケーションが移植しやすくなるはずだ。
![]() |
表1●J2EE/エンタープライズ・ポータルへの対応を進めるAPサーバーの例 |
APサーバー製品のもう一つのトレンドとして,エンタープライズ・ポータル(玄関)の構築を支援する機能や製品の充実,が挙げられる(表1[拡大表示])。ポータル対応に乗り出す背景には,JSP(JavaServer Pages)やEJB(Enterprise JavaBeans)といったJ2EEの技術がポータル構築に向いている,ということがある。エンタープライズ・ポータルは,企業内に散らばるアプリケーションに対し,それらへの入り口を1カ所にまとめようというものだ。その際,ユーザーごとにコンテンツを制御する機能が必要になる。J2EE対応のAPサーバーはJSPを利用してHTMLコンテンツを動的に生成できるため,ユーザー管理やコンテンツ制御機能などを実装しやすい。
良くも悪くも独自色が薄まる
J2EEへの完全対応は,「BEA WebLogic Server」や「WebSphere Application Server」といった,元々Javaサーバーとして生まれた製品だけの動きではない。独自の開発/実行環境から出発した製品もJavaの世界にどっぷりと足を踏み込み,“J2EEサーバー”への歩みを加速させ始めた。
例えば,米iPlanet E-Commerce Solutionsは,「Netscape Application Server(NAS)」と「NetDynamics」という2つの草分け的なAPサーバーの統合を完了し,「iPlanet Application Server 6.0」として出荷開始した。製品発表会では,JSP1.1,EJB1.1などに加え,JMS(Java Message Service) 1.0などへの対応を前面に掲げ,J2EEへの完全対応を強調した。従来の独自環境からJavaに軸足を移し,J2EE対応で先行する製品に肩を並べた。
米Oracleも,独自言語PL/SQLの殻を破り,J2EEに注力している。2000年9月に「Oracle Internet Application Server 8i(Oracle iAS)」を国内出荷したが,2001年1月に出荷予定のR1.0.2では,Servlet 2.2,JSP 1.1,EJB 1.1などJava APIのバージョンを更新してくる。
このように,J2EE完全対応に向かうAPサーバーは,APIのバージョンを更新することが機能強化の柱になる。ただしJ2EEは仕様であるため,APIのバージョンで先行していても,いつかは他の製品が追い付いてくる。そのためユーザーは,セキュリティやコンテンツ管理機能といった付加価値にも注目する必要があるだろう。
ポータル対応は3つの動き
APサーバー・ベンダーのエンタープライズ・ポータルへの対応は,最近の目立った動きの一つだ。表1[拡大表示]に登場するベンダーはいずれも,ポータル対応に向けて手を打ってきた。その実装には,(1)米OracleのようにAPサーバーの機能の一部として提供する,(2)米iPlanet E-Commerce Solutionsのように単体の製品として提供する,(3)APサーバーと連携させるための製品を提供する――という3つの動きがある。
(3)は,HTMLコンテンツを動的に生成するJSPを活用した方法である。J2EEに対応したAPサーバーの開発モデルでは,EJBにまとめた業務ロジックを実行し,JSPを使って処理結果をHTMLに埋め込むことが可能だ。
一方,エンタープライズ・ポータルを構築するためには,アプリケーションやHTMLを管理し,ユーザーごとに提供するコンテンツを制御する機能が必要だ。アイルランドIONA Technologiesは,これらの機能を「iPortal Server」としてまとめた。その上で,「iPortal Server」をJSPとEJBとで挟み込むことで,ユーザーに表示するHTMLコンテンツの制御を実現している(図1[拡大表示])。アプリケーションと関連付けたリソースへの入出力はXML(eXtensible Markup Language)に統一してある。