![]() |
iPlanet Application Server 移行ガイド |
第 3 章 NAS 2.1 アプリケーションの実行
この章では、ソースレベルの変更を行わずに iPlanetTM Application Server 6.0 上で NAS 2.1 アプリケーションを実行する方法について説明します。オンラインバンクサンプルのセットアップについては、この章の最後に説明します。iPlanet Application Server 6.5 上でユーザのアプリケーションを実行する前に、バンクのサンプルをセットアップすることをお勧めします。バンクのサンプルは移行プロセスを順を追って最後まで理解するのに役立ちます。iPlanet Application Server 6.5 は NAS 2.1 と後方互換性があります。つまり、コードを変更しなくても以前の NAS 2.1 アプリケーションを iPlanet Application Server 6.5 上に配置できます。ただし、実装には特定の手順が必要です。たとえば、新しいサーバに配置する前に C++ アプリケーションおよびエクステンションをコンパイルし直す必要があります。「C++ アプリケーションおよびエクステンション」を参照してください。また、使用する JDBC のバージョンへの正しいクラスパスも必要です。
NAS 2.1 のアプリケーションコンポーネント
NAS 2.1 のアプリケーションコンポーネント
この節では、2.1 プログラミングモデルの主な各コンポーネントタイプに対する iPlanet Application Server 6.5 でのサポートについて説明します。このサポートについては、次の節で説明します。
HTML テンプレート
HTML テンプレート
プレゼンテーションレイアウトでは、GX タグを含む NAS 2.1 スタイルの HTML テンプレートが全面的にサポートされており、NAS テンプレートエンジンによる変更の必要はありません。ただし、テンプレートが Servlet によって呼び出されると、テンプレートは JSP としてコンパイルされます。JSP では、階層型クエリを除く GX タグがサポートされています。
AppLogics
Java 標準が新しいプログラミングモデルのベースとなり、 NAS 2.1 で採用されていた専用の API の多くは廃止されましたが、iPlanet Application Server 6.5 でも AppLogic フレームワークは全面的にサポートされています。詳細は、『iPlanet Application Server Foundation Class Reference』を参照してください。
データベースロジック : DAE と JDBC
NAS 2.1 のデータベースアクセスクラスおよびインターフェイスは廃止され、Java 標準のデータベースコネクション API である JDBC が採用されています。iPlanet Application Server 6.5 では、NAS 2.1 のデータベースコネクションおよびクエリメソッドを使用するコードがサポートされていますが、今後のリリースではサポートされない可能性があります。新しい JDBC レイヤは以前の 2.1 JDBC レイヤと同じ機能を持っており、多くの新規メソッドがサポートされています。その結果、一部の AppLogic コードを変更して、回避策を削除したり新規 JDBC 呼び出しを追加したりできます。
AppLogic では、次のいずれかの JDBC レイヤを使う必要があります。
新しい JDBC レイヤ
iPlanet Application Server 6.5 の JDBC レイヤの代わりに NAS 2.1 の JDBC AppLogic を使えますが、JDBC 1.2 ではなく JDBC 2.0 のインターフェイスが JVM に読み込まれていることを確認する必要があります。たとえば、次のようなログメッセージが返された場合、CLASSPATH 内の JDBC 2.0 インターフェイスの前に JDBC 1.2 インターフェイスがある可能性があります。以前の JDBC レイヤのどちらかを使いますが、両方は使えません。Servlet および EJB では、新しい JDBC レイヤのみを使います。各バージョンの JDBC 呼び出しの併用はサポートされていません。
[01/05/99 11:25:51:0] error:APPLOGIC-caught_exception:Caught Exception:
java.lang.NoSuchMethodError:java.sql.Statement:method
addBatch(Ljava/lang/String;)V not found
NAS レジストリ
大部分の NAS レジストリの場所は変わっていませんが、一部は LDAP ディレクトリ内にあります。詳細は、『管理および配置ガイド』を参照してください。
NAS 2.1 アプリケーションの配置
すべてのアプリケーションを iPlanet Application Server に配置するには、iPlanet Application Server Administrator Tool を使います。詳細は、『管理および配置ガイド』を参照してください。
Java エクステンション
Java NAS 2.1 エクステンションを iPlanet Application Server 6.5 に移行するには、次の手順を実行します。
iPlanet Extension Builder 6.5 に IDL コードを読み込み、新規生成コードを作成します。
以前のエクステンションに対して行った変更を新規生成コードにマージします。
NMI に対するすべてのリファレンスを JNI に変換します (該当する場合のみ)。
C++ アプリケーションおよびエクステンション
iPlanet Application Server 6.5 には新バージョンの必須 C++ ヘッダファイルが用意されています。このため、新しいヘッダファイルを使って C++ アプリケーションおよびエクステンションをコンパイルし直す必要があります。iPlanet Application Server 6.5 ライブラリに対するエクステンションを再度コンパイルし、リンクする必要もあります。iPlanet Application Server には、MQSeries、TUXEDO、CICS を含む一部のレガシー システム用のビルド済みエクステンションが用意されています。これらのエクステンションは iPlanet Application Server 6.5 をサポートするために再度リリースされましたが、NAS 2.1 プログラミングモデルも引き続きサポートされます。
移行プロセスの開始
アプリケーションを新しいモデルに移行する場合、アプリケーションの再設計と移行計画の作成から開始するのが最も簡単な方法です。多くの場合、アプリケーション全体の大規模な移行計画を立てるよりも、アプリケーションを一部ずつ新しいプログラミングモデルに移行する方が簡単です。また、アプリケーションコンポーネントごとでなく、プレゼンテーションレイアウトやビジネスロジックなどのプログラミング層ごとに段階的に移行することもできます。2.1 コンポーネント (AppLogic など) と 6.5 コンポーネント (Servlet や EJB) 間の対話を可能にする部分的移行については、第 4 章「NAS 2.1 アプリケーションの移行」の「コンポーネントの部分的移行」を参照してください。
サンプルアプリケーションの移行
この節では、次のサンプルアプリケーションを移行する方法について説明します。
OnlineBank のサンプル
OnlineBank のサンプル
このサンプルは次の節に分かれています。
NAS 2.1 から iPlanet Application Server 6.5 への移行 - Solaris のみ
NAS 2.1 から iPlanet Application Server 6.5 への移行 - Solaris のみ
iPlanet Application Server 6.5 には配布物の一部として JDK 1.3.1_02 が含まれています。JDK 1.1 では classes.zip でしたが、新しい JDK 1.2 では、java.io や java.lang などの Java のすべてのコアパッケージが rt.jar に含まれています。rt.jar は次の場所にあります。
java クラスをコンパイルする場合、rt.jar を CLASSPATH に置いて、/iAS6.0-install-directory/ias/usr/java/bin ディレクトリにある javac を使ってコンパイルする必要があります。
- /iAS6.5-install-directory/ias/usr/java/jre/lib
NAS 2.1 から iPlanet Application Server 6.5 (Solaris プラットフォーム) に移行するには、次の手順を実行します。
OnlineBank java Application パッケージを iPlanet Application Server 6.5 がインストールされているマシンにコピーします。これは、次のように GXAPP の下に新しい OnlineBank ディレクトリを作成して行います。
Web サーバをインストールしたディレクトリ内の docs/GXApp の下に OnlineBank という新しいディレクトリを作成します。
- /iAS6.5-install-directory/ias/APPS/GXApp/OnlineBank
- /Netscape/Suitespot/docs/GXApp/OnlineBank
tnsnames.ora に ksample のエントリを作成します。ksample が、8.1.7 で動作する Oracle データベースを指定していることを確認します。
- さらに、NAB 2.1 Web サーバの docs ディレクトリにある OnlineBank のすべての HTML ファイルをこの OnlineBank ディレクトリにコピーします。
サンプルアプリケーション http://hostname/GXApp/OnlineBank/OBLogin.html を実行し、アカウントバランスおよびその他のオプションを確認します。
- ディレクトリを /iAS6.5-install-directory/ias/APPS/GXApp/OnlineBank に変更し、/iAS6.5-install-directory/ias/bin/kreg OnlineBank.gxr を実行します。
- 以前の 2.1 バージョンではなく、iPlanet Application Server 6.5 kreg を実行していることを確認します。
C++ COnlineBank (NAS2.1) サンプルアプリケーション
C++ COnlineBank (NAS2.1) サンプルアプリケーションを実行するには、次の手順に従います。
COnlineBank Application を iPlanet Application Server 6.5 がインストールされているマシンにコピーします。これは、GXApp の下に新しいディレクトリ COnlineBank を作成して行います。
Web サーバをインストールしたディレクトリ内の docs/GXApp の下に COnlineBank という新しいディレクトリを作成します。
- /iAS6.5-install-directory/ias/APPS/GXApp/ConlineBank
- /Netscape/Suitespot/docs/GXApp/COnlineBank
次の 2 つの環境変数を設定します。
- NAB 2.1 Web サーバの docs ディレクトリにある COnlineBank のすべての HTML ファイルを、作成した COnlineBank ディレクトリにコピーします。
tnsnames.ora に ksample のエントリを作成します。ksample が、8.1.7 で動作する Oracle データベースを指定していることを確認します。
- setenv GX_ROOTDIR /iAS6.5-install-directory/ias
- setenv GX_ROOT /iAS6.5-install-directory/ias
提供されている makefile で make を実行します。
- /usr/ccs/bin/make -f makefile
kreg ユーティリティを使って登録します。
- ここで/usr/ccs/bin は makefile が存在するディレクトリです。このアクションによって、生成された libCOnlineBank.so ファイルが /iAS6.5-install-directory/ias/gxlib ディレクトリにコピーされます。
サンプルアプリケーション http://hostname/GXApp/COnlineBank/COBLogin.html を実行し、アカウントバランスおよびその他のオプションを確認します。
- ディレクトリを /iAS6.5-install-directory/ias/APPS/GXApp/COnlineBank に変更し、/iAS6.5-install-directory/ias/bin/kreg COnlineBank.gxr を実行します。
- 以前の NAS 2.1 バージョンではなく、新しい iPlanet Application Server 6.5 kreg を実行していることを確認します。
US Population Java サンプルアプリケーション
US Population Java サンプルを NAS 2.1 から iPlanet Application Server 6.5 に移行するには、次の手順を実行します。
US Population Java アプリケーションパッケージを iPlanet Application Server 6.5 インストール済みのマシンの States という新規ディレクトリにコピーします。
Web サーバをインストールしたディレクトリにある docs/GXApp の下に States という新しいディレクトリを作成します。
- GXAPP/IAS6.5-install-directory/ias/APPS/GXApp/States
- /Netscape/Suitespot/docs/GXApp/States
tnsnames.ora に ksample のエントリを作成します。ksample が、8.1.7 で動作する Oracle データベースを指定していることを確認します。
- さらに、この States という名前のディレクトリに NAB 2.1 Web サーバの docs ディレクトリにある US Population アプリケーションからすべての HTML ファイルをコピーします。
US Population アプリケーションを実行します。
- ディレクトリを /IAS6.5-install-directory/ias/APPS/GXApp/States に変更し、/IAS6.5-install-directory/ias/bin/kreg states.gxr を実行します。
- 以前の 2.1 バージョンではなく、iPlanet Application Server 6.5 kreg を実行していることを確認します。
- http://hostname/GXApp/States/index.html
- 人口統計を表示するには、RunRegionReport をクリックします。
US Population C++ サンプルアプリケーション
US Population C++ サンプルを NAS 2.1 から iPlanet Application Server 6.5 に移行するには、次の手順を実行します。
US Population C++ アプリケーションを iPlanet Application Server 6.5 インストール済みのマシンにコピーします。GXAPP の下の CStates という新規ディレクトリにコピーします。
Web サーバをインストールしたディレクトリ内の docs/GXApp の下に CStates という新しいディレクトリを作成します。
- /IAS6.5-install-directory/ias/APPS/GXApp/Cstates
- /Netscape/Suitespot/docs/GXApp/CStates
tnsnames.ora に ksample のエントリを作成します。ksample が、8.1.7 で動作する Oracle データベースを指定していることを確認します。
- さらに、NAB 2.1 Web サーバのマニュアルのディレクトリにある US Population のすべての HTML ファイルを、作成した CStates ディレクトリにコピーします。
states.mak ファイルに対して nmake (nmake -f states.mak) を実行します。
生成された states.dll を /IAS6.5-install-directory/ias/bin ディレクトリにコピーします。
US Population アプリケーションを実行します。
- ディレクトリを /IAS6.5-install-directory/ias/APPS/GXApp/CStates に変更し、/IAS6.5-install-directory/ias/bin/kreg states.gxr を実行します。
- 以前の 2.1 バージョンではなく、iPlanet Application Server 6.5 kreg を実行していることを確認します。
- http://hostname/GXApp/CStates/index.html
- 人口統計を表示するには、RunRegionReport をクリックします。
前へ 目次 索引 DocHome 次へ
Copyright © 2002 Sun Microsystems, Inc. All rights reserved.
最新更新日 2002 年 3 月 6 日