Sun Java System Application Server Enterprise Edition 8.2 リリースノート (Windows 版)

第 2 章 Application Server Enterprise Edition 8.2 について

Sun Java System Application Server Enterprise Edition 8.2 は、大規模な本稼働環境を持つ J2EE アプリケーションおよび Java テクノロジベースの Web サービスを開発および配備するための、J2EE 1.4 プラットフォーム互換サーバーです。

この章では、次の内容について説明します。

8.2 Release の新機能

Application Server Enterprise Edition 8.2 には、次の拡張機能が含まれています。

ハードウェアとソフトウェアの要件

ここでは、Sun Java System Application Server Enterprise Edition 8.2 製品をインストールする前に満たしている必要のある要件を示します。

プラットフォーム要件

次の表に、Sun Java System Application Server Enterprise Edition 8.2 製品でサポートされているオペレーティングシステムを示します。また、Application Server をインストールして実行するための最小および推奨のメモリー要件も示します。

表 2–1 Sun Java System Application Server 8.2 のプラットフォーム要件

オペレーティングシステム 

最小メモリー 

推奨メモリー 

最小ディスク容量 

推奨ディスク容量 

JVM [サポートされるのは、64 ビット ではなく 32 ビットの JVM だけです。]

Windows 2000 Advanced Server SP4 

Windows XP SP2 

Windows 2003 Enterprise Server SP1 (32 bit) 

Windows 2003 Enterprise Server SP1 (64 bit) 

1G バイト 

2G バイト 

500M バイトの空き領域 

1G バイトの空き領域 

J2SE 1.4.2_10、J2SE 5_06 


注 –

Microsoft Windows プラットフォームで Application Server を実行している場合は、FAT や FAT32 ではなく NTFS ファイルシステムを使用する必要があります。


重要パッチ情報

現時点で Sun Java System Application Server Enterprise Edition 8.2 に必要なパッチについては、http://sunsolve.sun.com にアクセスして「app server 8.1 patch」を検索してください。Sun Java System Application Server Enterprise Edition 8.2 のリンクをたどります。オペレーティングシステムのパッチ要件に変更があり、Java Enterprise System コンポーネントのパッチが利用可能になった場合、更新は SunSolveSM Web サイトから入手できます。最初は、推奨パッチクラスタの形式で提供されます。

JDBC ドライバとデータベース

Sun Java System Application Server は、対応する JDBC ドライバを備えた任意の DBMS への接続をサポートするように設計されています。Sun がテストし、J2EE 準拠のデータベース設定を行うのに使用できることが確認されたコンポーネントを、次の表に示します。

表 2–2 J2EE 互換 JDBC ドライバ

JDBC ベンダー 

JDBC ドライバのタイプ 

サポートされるデータベースサーバー 

i-net Software 

Type 4 

Oracle® 8.1.7、9i、9.2.0.3+、10.1.x、10.2.x

Sybase ASE 12.5 

Microsoft SQL Server 2000 4.0 Service Pack 1 

IBM 

Type 2 

IBM DB2 8.1 Service Pack 3+ 

Java DB 

Type 4 

Apache Derby 10.1.2.1 

PointBase 

Type 4 

PointBase Network Server 5.2 

DataDirect 

Type 4 

Oracle (R) 8.1.7、9i、9.2.0.3+、10.1.x、10.2. x

Sybase ASE 12.5.2 

Microsoft SQL Server 

IBM DB2 8.1 Service Pack 3+ 

MySQL 

Type 4 

5.x

Sun Java System JDBC Driver for Oracle 

Type 4 

Oracle (R) 9.2.0.3、10G 

Sun Java System JDBC Driver for DB2 

Type 4 

IBM DB2 8.1 Service Pack 3+ 

Sun Java System JDBC Driver for Sybase 

Type 4 

Sybase ASE 12.5.2 

Sun Java System JDBC Driver for Microsoft SQL Server 

Type 4 

Microsoft SQL Server 2000 4.0 Service Pack 1 

Oracle 

Type 4、Type 2 

Oracle (R) 9.2.0.3、10G 

バンドルされている Java DB データベースの使用

この節では、Application Server 8.2 にバンドルされている Java DB データベースの実装を使用する手順について説明します。

Java DB データベースの起動と停止

Sun Java System Application Server 8.2 には、Java DB ネットワークサーバーの起動と停止を行うための 2 つの新しい asadmin コマンドが導入されています。

Java DB ユーティリティースクリプト

Application Server 8.2 とともに出荷される Java DB の構成には、Java DB の使用に役立つ便利なスクリプトも含まれます。appserver_install_dir /derby/frameworks/NetworkServer/bin ディレクトリには、次の使用可能なスクリプトがあります。

ProcedureJava DB ユーティリティースクリプトを実行するために環境を設定するには

  1. appserver_install_dir/derby ディレクトリをポイントするように、DERBY_INSTALL 環境変数を設定します。

  2. CLASSPATH 環境変数の設定を解除します。

  3. (省略可能) 次のプロパティーも指定できます。

    • DERBY_SERVER_HOST をネットワークサーバーの待機先ホストとして設定します。

      0.0.0.0 に設定すると、すべてのリスナーを有効にできます。

    • DERBY_SERVER_PORT をネットワークサーバーの待機先ポート番号として設定します。

参照

これらのユーティリティーの詳細については、Derby のツール および Admin に関するガイドを参照してください。

Web サーバー

ここでは、Sun Java System Application Server Enterprise Edition 8.2 向けにサポートされている Web サーバーを示します。

表 2–3 サポートされている Web サーバー

Web サーバー 

バージョン 

オペレーティングシステム 

Sun Java System Web Server 

Windows 2000 Advanced Server SP4 

Windows XP SP2 

Windows 2003 Enterprise Server SP1 (32-bit) 

Windows 2003 Enterprise Server SP1 (64-bit) 

ブラウザ

ここでは、Sun Java System Application Server Enterprise Edition 8.2 でサポートされているブラウザを示します。

表 2–4 サポートされている Web ブラウザ

ブラウザ 

バージョン 

Mozilla 

1.4、1.5、1.6、1.7.x

Netscape NavigatorTM

4.79, 6.2, 7.0, *** 

Internet Explorer 

5.5 Service Pack 2、6.0 

Firefox 

*** 

HADB の要件とサポートされているプラットフォーム

「ハードウェアとソフトウェアの要件」に示されている要件に加えて、システムが、下に示されている HADB を実行するための要件を満たしていることを確認してください。


注 –

システムの Java コンポーネントは JDK 1.4.2_02 を使用して構築され、システムは JDK 1.5 上でテストされています。


サポートされるプラットフォーム

HADB サーバーホストの要件

HADB 管理ホストの要件

HADB クライアントホストの要件

Enterprise Edition 8.2 リリースで修正されたバグ

ここでは、お客様から報告された問題のうち、Sun Java System Application Server Enterprise Edition 8.2 製品で解決されたものを示します。

バグ番号 

説明 

4887079 

配備と配備の取り消し、および配備されているアプリケーションの検索を実行するためのプログラミング API。 

4911462 

ポートが使用可能な範囲を外れているときの正しくないメッセージ。 

4918535 

sun-appserv-deploy() が、 createAndDropTables() をサポートするフラグを取らない。

4939749 

xml:()lang() 値は、Deploytool によって自動的に挿入されるべきではない。

4946914 

クラスタに対する配備サポート。 

4979136 

ディレクトリベースの配備によって、アプリケーションがバックアップディレクトリにコピーされる。 

4987274 

Bean のリモートインタフェースに Util() という名前が付いていると、配備が失敗する。

4988818 

J2SE 1.5 が使用されていると、透過的持続性ランタイムテストが失敗する。 

4992295 

コマンド行インタフェースでのシステムコンポーネントの配備は成功するが、サーバーのログファイルにエラーが記録される。 

4994790 

precompilejsp=true を使用して配備された JSP が、sun-web.xml でコンパイラフラグを使用しない。

4996876 

ベリファイアと、verify=true による配備のレポートが異なる。

5003356 

最新の server.policy ファイルアップデートが Upgradetool によって処理されない。

5006854 

asadmin deploy --virtualservers が配備に失敗する。

5007309 

HTTP リスナーアクセプタスレッドに対する不適切なデフォルト値。 

5008941 

アプリケーションが配備取り消しの後で再度配備されたとき、JSR88 の起動操作が失敗する。 

5016848 

Windows で、JDK JAR ファイルキャッシュと開いているファイルによって、一部の再配備が妨げられる。 

5017956 

JAR モジュールレベルでの list -m によって EJB が表示されない。

5030425 

deploydir コマンドで security-role-mapping の変更が無視される。

5041343 

servlet-mapping url-pattern- -directory が常に / で囲まれているかどうかがチェックされない。

5046120 

大規模アプリケーションの配備中に SEVERE ログメッセージが出力される。 

6041268 

HTTP TRACE を無効にする機構がない。

6062410 

地域対応化されたマシンで、Upgradetool が英語で起動される。 

6067341 

Web アプリケーションで ejb-refs を使用して deploydir コマンドを実行すると、リモートインタフェースの rmic で失敗する。

6152752 

SPEC J2004 テストの実行中に outofbound 例外がログに記録される。

6154949 

接続検証が機能しない。 

6157310 

関係管理中に、ランタイムで「Collection」フィールドが再読み込みされる。

6165491 

ドメインがデフォルトドメインとは別のパスに作成されていると、ドメインの起動に失敗する。 

6171667 

ライフサイクルモジュールのプロパティー要素が domain.xml に作成されない。

6171729 

MDB の配備中に、文字列でない RA ActivationSpec プロパティーで IllegalArgumentException が発生する。

6172178 

OSS/J TT TCK で、リモートアプリケーションサーバーからの JMS 接続ファクトリの取得に失敗する。 

6172589 

セキュリティーマネージャーの呼び出しの最適化。 

6183492 

[DataDirect] DB2: 一部の透過的持続性アプリケーションサーバーテストで、EJB の呼び出し中に例外がスローされて失敗する。 

6184864 

OR 演算子を使用した EJBQL クエリーで結果が返されない。式の単一値 CMR は null となる。 

6197393 

Deploytool で、配備記述子に message-destination 要素が作成されないことがよくある。 

6198796 

アプリケーションを配備する場合、EE サンプルの asadmin コマンドに availabilityenabled=true() オプションを含める必要がある。

6198981 

クラスパスに xalan.jar ファイルがないと、ドロップダウンが空になり、Web サービスウィザードが失敗する。

6199076 

asant スクリプトを使用して、Duke 書店サンプルのフェイルオーバーテストを実行できない。

6202363 

mq-failover サンプルアプリケーション内の 1 つの ant ターゲットで、クラスタ名がハードコードされている。

6202606 

JMS と Message Queue の間の SSL JMS に JMS サービス設定を使用できない。 

6206176 

Application Server 8.1 で、startserv および stopserv にアクセス権 755 が必要である。

6207297 

デフォルトの SSL ポート番号 (443) を使用しないで Application Server にアクセスすると動作しない。 

6207862 

asadmin create-domain --help によって生成された一部が正しくない。

6363339 

managementws サンプルで、MANIFEST.MF の参照を castor-0.9.3.9-xml.jar から castor-0.9.9.1.jar に更新する必要がある。

6372759 

AS v8.2 Startup によって、特定の Java システムプロパティーが適切に処理されない。 

HADB に関する追加情報

ここでは、Application Server 8.2 に含まれている HADB 実装に関する重要な追加情報を示します。

HADB の拡張機能

既知の SQL の制限事項

高可用性負荷分散

Application Server には、以下のためのロードバランサ機能が組み込まれています。

可用性により、クラスタ内の Application Server インスタンスのフェイルオーバー保護が可能になります。ある Application Server インスタンスがダウンすると、そのサーバーに割り当てられていたセッションを別の Application Server インスタンスが引き継ぎます。セッション情報は、HADB に格納されます。HADB は、HTTP セッションの持続性、ステートフルセッション Bean、およびシングルサインオン資格をサポートします。

Application Server 製品リリース

Application Server 製品は、さまざまな方法で提供されます。次の表に、製品リリース別の配布方法を示します。

Application Server 製品リリース 

配布方法 

Sun Java Enterprise System 内の Application Server Enterprise Edition コンポーネント 

ファイルベースの配布 

SunSolve 経由でパッチのインストールが必要

Application Server Standard および Enterprise Edition スタンドアロン製品 

ファイルベースおよびパッケージベースの配布 

互換性について

Deploytool

Deploytool は使用できなくなります。これと等価な機能は NetBeans IDE にあります。この詳細および移行の計画については、http://www.netbeans.org/kb/41/j2ee-tut/index.html にある NetBeans 4.1 用の『J2EE 1.4 Tutorial』を参照してください。

ベリファイア

クラスローダの変更

現在のリリースでは、domain.xml (アプリケーションサーバーの設定ファイル) の classpath-prefixserver-classpath、および classpath-suffix 属性に追加された JAR およびディレクトリエントリは、JVM システムクラスパスでも使用できます。この動作に依存しているアプリケーションは、クラス java.lang.ClassLoader の次のメソッドを使用して、JVM システムクラスパスのクラスやその他のリソースにアクセスしている可能性があります。

次のメジャーリリースでは、classpath-prefixserver-classpath、および classpath-suffix に追加された JAR およびディレクトリエントリは、JVM システムクラスパスでは使用できなくなります。アプリケーションが前述のいずれかのメソッドを使用している場合は、システムクラスパスでリソースが使用できることを前提としていない等価なメソッドを使用することを強くお勧めします。JVM システムクラスパスに依存しない等価なメソッドは、java.lang.ClassLoader にあり、可能な場合は使用するようにしてください。次に例を示します。


例 2–1 古いコード

java.net.URL url = ClassLoader.getSystemResource
("com/acme/tools/tools.properties");


例 2–2 推奨される変更

java.net.URL url = this.getClass().getClassLoader().getResource
("com/acme/tools/tools.properties");

コードを変更できない場合は、次のリリースで追加される、JVM システムクラスパスを設定するための新しい設定オプションの使用を選択することもできます。

Web サービスのセキュリティー設定

Web サービスのセキュリティーは、wss-client-config.xml および wss-server-config.xml ファイルを使用して設定できます。これらの設定ファイルの内容や名前は変更される可能性が高いことに注意してください。ただし、等価な機能は引き続き使用できます。

J2EE のサポート

Sun Java System Application Server Enterprise Edition 8.2 は、J2EE 1.4 プラットフォームをサポートしています。J2EE 1.4 プラットフォームで利用できる拡張 API を、次の表に示します。

表 2–5 J2EE 1.4 プラットフォームで使用可能な API

API 

説明 

コンポーネント

Application および Application Client 

XML スキーマによる標準配備記述子の実装 

Enterprise JavaBeans (EJB) 2.1 

タイマーサービスと EJB Web サービスエンドポイント 

Java Servlet 2.4 

Web サービスエンドポイントのフィルタ 

JavaServer Pages (JSP) 2.0 アーキテクチャー 

式言語とタグライブラリ 

J2EE Connector Architecture 1.5 

着信リソースアダプタと Java Message Service (JMS) プラグイン可能性 

Web サービス

Java Web Services Developer Pack 1.5 

XML アプリケーション、Web サービス、および Web アプリケーションを構築、テスト、および配備するための統合ツールキット 

Java API for XML-based Remote Procedure Calls (JAX-RPC) 1.1 

WSDL と Java テクノロジのマッピングと、Web サービスクライアントおよびエンドポイントの開発のサポート 

WS-I Basic Profile 1.0 

WSDL と SOAP による相互運用の有効化要素 

SOAP with attachment API for Java (SAAJ) 1.2 

SOAP ベースのメッセージングのための API 。添付ファイル付きの SOAP メッセージの作成を可能にします。 

Java APIs for XML Registries (JAXR) 1.0 

Universal Description Discovery and Integration (UDDI および ebXML) などの XML レジストリにアクセスするための統一された標準 API 

その他

J2EE Deployment 1.1 

J2EE のコンポーネントおよびアプリケーションの配備を可能にする標準 API 

J2EE Management 1.0 

J2EE プラットフォームを管理するための情報モデルの定義 

Java Management Extensions (JMX) 1.2 

標準的な管理 API 

Java Authorization Contract for Containers (JACC) 1.0 

J2EE Application Server と認証ポリシープロバイダとの間でのセキュリティー規約の定義 

Java API for XML Processing (JAXP) 1.2 

XML ドキュメントの解析および変換を可能にする API。XML スキーマの処理もサポートします。 

JMS 1.1 

J2EE アプリケーションコンポーネントによるメッセージの作成、送信、受信、読み取りを可能にするメッセージング標準。キューおよびトピック用の統一された API もサポートします。 

JavaMail 1.3 

メールシステムをモデル化する抽象クラスの集合。API へのマイナーアップデートも含まれます。 

サポートされている別の Java バージョンへの切り換え

Sun Java System Application Server 8.2 では、基盤となる JVM として J2SE 5.0 または互換バージョンが必要です。Java のバージョンを切り替える場合は、Windows OS と UNIX OS の両方で次の手順を実行します。

Procedureサポートされている別の Java バージョンへ切り換えるには

  1. 必要に応じて、Java SDK (JRE ではない) をダウンロードしてインストールします。

    Java SDK は、http://java.sun.com/j2se からダウンロードできます。

  2. Application Server を完全に停止します。

    次のコマンド行が使えます。

    ApplicationServer-base\bin\asadmin.bat stop-domain


    
    

    または、管理コンソールの GUI で次の手順に従います。

    1. 「アプリケーションサーバー」ノードをクリックします。

    2. 「インスタンスの停止」をクリックします。

  3. install_dir\config\asenv.conf ファイル (Windows では asenv.bat) を編集して、新しい J2SE のホームディレクトリをポイントするように AS_JAVA の値を変更します。

  4. as-install\samples\common.properties ファイルを編集して、新しい J2SE のホームディレクトリを参照するように com.sun.aas.javaRoot... で始まる行を変更します。

  5. Application Server を再起動します。


    ApplcationServer-base\bin\asadmin.bat start-domain

高パフォーマンス

Application Server は、高パフォーマンスの EJB コンテナ、Web コンテナ、および Web サービスを組み込んでおり、Sun Java System Message Queue ソフトウェアによる並行メッセージデリバリをサポートします。

スケーラビリティー

Application Server は、サーバーインスタンスのクラスタ化と負荷分散の要求による水平方向のスケーラビリティーをサポートします。同時に、マルチプロセッサの大規模マシンをサポートする最大級の垂直方向スケーラビリティーも実現します。統合メッセージブローカは、より高度なスケーラビリティーと可用性のためにクラスタ化できます。HTTP クライアント、RMI/IIOP ベースのリッチクライアントアプリケーション、Web サービスクライアント、および JRM クライアントからのクライアントアクセスは、Application Server クラスタに負荷分散できます。

JavaServer Faces 1.1 のサポート

Sun Java System Application Server Enterprise Edition 8.2 は、JavaServer Faces 1.1 テクノロジをサポートしています。JavaServer Faces テクノロジは、自身の状態、イベント、ハンドリング、および入力チェックを管理するユーザーインタフェースコンポーネントに対応する一連のサーバーサイド API から成ります。これらの API は、ページナビゲーションを規定し、国際化とアクセシビリティーをサポートします。JSP のカスタムタグライブラリを使用して、カスタム UI コンポーネントを追加できます。

JavaServer Faces テクノロジで開発している間、開発チームの各メンバーは、処理の一部分にだけ集中することができます。単純なプログラミングモデルでは、これらの部分をつなぎ合わせることにより、ずっと効率的でシンプルな開発サイクルが実現されます。