Sun Java System Application Server 7 2004Q2 リリースノート

Sun Java™ System Application Server Standard Edition および Enterprise Edition リリースノート

バージョン 7 2004Q2

Part No. 817-7577

このリリースノートには、Sun JavaTM System Application Server 7 2004Q2 Standard Edition および Enterprise Edition のリリース時における重要な情報が含まれています。本書には、拡張機能、インストール時の注意、既知の問題、および最近見つかったその他の問題点が記載されています。Sun JavaTM System Application Server 7 をご使用になる前に、このリリースノートと関連マニュアルをお読み下さい。

このリリースノートには、次の内容が含まれています。


リリースノートの改訂履歴

この節では、Sun Java System Application Server 7 Standard Edition および Enterprise Edition の初期リリース後に、リリースノートで変更が加えられた箇所について示します。

改訂日付

変更の詳細

2004年5月

Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition の初版リリース


新機能

Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition は、広い範囲にわたるアプリケーションサービスと Web サービスを展開するのに適した、高性能の J2EE プラットフォームを提供します。


プラットフォームの概要

この節では Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition でサポートされるプラットフォームコンポーネントについて説明します。

詳細は次のとおりです。

オペレーティングシステムとディストリビューションのタイプ

次の表に、Sun Java System Application Server 7 2004Q2 でサポートされるオペレーティングシステムとそのディストリビューションタイプを示します。

表 1 サポートされるオペレーティングシステムとディストリビューションのタイプ 

プラットフォーム

オペレーティングシステムのバージョン

ディストリビューションのタイプ

Application Server 7 2004Q2 Edition

Solaris SPARC

Solaris 8 Update 7, Solaris 9 Update 6

ファイルベースとパッケージベース

Standard Edition および Enterprise Edition

Solaris x86

Solaris 9 Update 4

ファイルベースとパッケージベース

Standard Edition および Enterprise Edition

Linux x861

Red Hat Advanced Server 2.1 Update 3、
Red Hat Advanced Server 3

ファイルベースと RPM ベース

Standard Edition および Enterprise Edition

Microsoft Windows

Windows 2000: Server Service Pack 2
Windows 2000: Advanced Server Service Pack 2
Windows 2000: Professional Service Pack 2
Windows XP: Professional

ファイルベース

Standard Edition のみ

1Linux では、ext3 ファイルシステムの装置で HADB は動作しません。
パッケージベースおよび RPM ベースのディストリビューションをインストールするためには、スーパーユーザーの特権が必要です。

システム要件

Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition の要件を次の表に示します。

表 2 Sun Java System Application Server  に対するプラットフォームの要件

操作システム

アーキテクチャ

最小メモリー

推奨メモリー

最小ディスク容量

推奨ディスク容量

Sun Solaris 8 SPARC または 9 SPARC 版

32 ビット / 64 ビット

256M バイト

1024M バイト

250M バイトの空き領域

500M バイトの空き領域

Solaris 9 x86 版

32 ビット

Red Hat Enterprise Linux 2.1、3

Windows 2000: Server Service Pack 2
Windows 2000: Advanced Server Service Pack 2
Windows 2000: Professional Service Pack 2
Windows XP: Professional

Intel 32 ビット

UNIX では、オペレーティングシステムのバージョンを uname コマンドで確認できます。ディスク容量は df コマンドで確認できます。

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

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

表 3 サポートされる JDBC ドライバ

JDBC ベンダー

JDBC ドライバのタイプ

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

PointBase 4.2

Type 4

PointBase Network Server 4.2

JConnect 5.5

Type 4

Sybase ASE 12.5

DataDirect 3.2

Type 4

MS SQL Server 2000 Service Pack 1

DataDirect 3.2

Type 4 (Thin)

Oracle 8.1.7

DataDirect 3.2

Type 4 (Thin)

Oracle 9.2.0.1

DataDirect 3.2

Type 2 (OCI)

Oracle 9.2.0.3+ w/ RAC

IBM

Type 2

IBM DB2 8.1 Service Pack 3

ほかにも、JDBC ドライバ検証プログラムによるテストで J2EE 1.3 プラットフォームの JDBC 要件に適合することが確認されたドライバがあります。これらのドライバは Sun Java System Application Server との JDBC 接続に使用できます。Sun では、これらのドライバに対する製品サポートは提供していませんが、Sun Java System Application Server でのこれらのドライバの使用はサポートしています。

Web サーバー

この節では、Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition 向けにサポートされる Web サーバーを一覧表示します。

表 4 サポートされる Web サーバー

Web サーバー

バージョン

操作システム

Sun Java System Web サーバー

6.0 Service Pack 6

Solaris SPARC 8 または 9
Red Hat Enterprise Linux 2.1 x86

Sun Java System Web サーバー

6.1

Solaris SPARC 8 または 9
Solaris 9 x86,
Red Hat Enterprise Linux 2.1 x86

Apache Web Server

1.3.29

Solaris SPARC 8 または 9
Solaris 9 x86,
Red Hat Enterprise Linux 2.1、3 x86

Microsoft IIS

5.0

Windows 2000: Server Service Pack 2
Windows 2000: Advanced Server Service Pack 2
Windows 2000: Professional Service Pack 2
Windows XP: Professional (Application Server の Standard Edition のみ)

ブラウザ

この節では、Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition でサポートされるブラウザを一覧表示します。

表 5 サポートされるブラウザ

ブラウザ

バージョン

Netscape Navigator

4.79, 6.2

Internet Explorer

5.5 Service Pack 2、6.0

ソフトウェアパッケージ

この節では、Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition 向けにサポートされる関連ソフトウェアパッケージを一覧表示します。

表 6 Application Server とバンドルするコンポーネントのバージョン

コンポーネント

Application Server 7.0 Platform and Standard Edition で使用するバージョン

Application Server 7.0 Enterprise Edition で使用するバージョン

Application Server 7 Platform and Standard Edition で使用するバージョン

J2SE

1.4.0_02

1.4.1_03

1.4.2_04

PointBase

4.2

なし

4.2 (Standard Edition のみ)

Sun Java System Message Queue Standard Edition

3.0.1

3.0.1

3.5 Service Pack 1


必須のSolaris パッチ

Solaris 8 システムには、次の URL の「パッチサポートポータル」から「推奨 & セキュリティパッチ」に記載されている Sun 推奨パッチクラスタをインストールする必要があります。

http://jp.sunsolve.sun.com/

Solaris 8 システムには、パッチ番号 109326-06、108827-26、および 110934 のパッチをインストールしてください (全リビジョン対象。パッケージベースのインストールのみ)。これらの必須パッチは、インストーラによってチェックされます。これらのパッチがインストールされていないと、Sun Java System Application Server 7 2004Q2 ソフトウェアをインストールすることも実行することもできません。最新の推奨パッチクラスタには、これらのパッチが最初から含まれています。


アップグレードオプション

Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition のインストーラにより、Application Server の前のバージョンから最新のバージョンにアップグレードできます。各 Application Server は、サポートされているどのプラットフォームにインストールされたものも、同じプラットフォームおよびインストールタイプで、対応するバージョンにアップグレードできます。使用可能なアップグレードオプションを次の表に示します。

表 7 使用可能なアップグレードオプション

現在インストールされている製品

Sun Java System Application Server 7 2004Q2 にアップグレード可能

Sun ONE Application Server 7.0 Platform Edition

Standard Edition
Enterprise Edition

Sun ONE Application Server 7.0 Standard Edition、Update 1、Update 2、および Update 3

Standard Edition
Enterprise Edition

Sun ONE Application Server 7.0 Enterprise Edition

Enterprise Edition

Application Server をアップグレードする際には、以下の点に注意してください。


移行ツールの使い方

既存の J2EE アプリケーションが他のベンダーのアプリケーションサーバー上で動作している場合、Sun Java System 移行ツールを使用して、そのアプリケーションを Sun Java System Application Server 7 2004Q2 リリース上で動作させることができます。移行したアプリケーションは、変更を加えなくても Sun Java System Application Server 7 2004Q2 リリース上で動作します。しかし、高可用性という特徴を生かすためには、 sun-ejb-jar.xml のDTD バージョンの配備記述子 (deployment descriptor) が sun-ejb-jar_2_0-0.dtd ではなく sun-ejb-jar_2_0-1.dtd を指すように変更します。


Sun ONE Studio 5 Standard Edition Update 1

Sun Java System Application Server と組み合わせて使える Sun ONE Studio 5 Standard Edition 製品のマニュアルは次の場所にあります。

http://docs.sun.com/db/prod/java.studio?l=ja


その他の要件と制限事項

Sun Java System Application Server ソフトウェアをインストールする前に、次の要件を満たしていることが必要です。

すべてのプラットフォームに関して

UNIX の場合

Microsoft Windows の場合


マニュアルの参照方法

Sun Java System Application Server のマニュアルは、様々な方法で入手できます。

Sun Java System Application Server 7 2004Q2 のマニュアル

Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition のマニュアルは、PDF 形式または HTML 形式のオンラインファイルでも入手できます。

次の表は、Sun Java System Application Server のマニュアルに記述されているタスクと概念を示しています。( 7 2004Q2 で改訂) と表示されたマニュアルは、Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition リリース用に改訂されたものです。この表示がついていないマニュアルは、バージョン 7 Enterprise リリースから改訂されていません。

表 8 Sun Java System Application Server マニュアルのロードマップ 

情報の内容

参照するマニュアル

(7 2004Q2 で改訂) ソフトウェアとマニュアルに関して、最近得られた情報。サポート対象のハードウェア、オペレーティングシステム、JDK、および JDBC/RDBMS の詳細な表形式の概要を含む情報

『リリースノート』

サーバーのアーキテクチャの図と説明、Sun Java System Application Server アーキテクチャの利点

『サーバーのアーキテクチャ』

(7 2004Q2 で改訂) Sun Java System Application Server 製品を初めて使われる方へ。サンプルアプリケーションのチュートリアルを含む情報

『Getting Started Guide Standard Edition and Enterprise Edition』

(7 2004Q2 で改訂) Sun Java System Application Server Standard Edition および Enterprise Edition サンプルアプリケーションや管理インタフェースなど、ソフトウェアやコンポーネントのインストール。Enterprise Edition ソフトウェアの可用性を高める方法

『Installation Guide』

(7 2004Q2 で改訂) 最適な方法で確実に Sun Java System Application Server を導入するための、システムニーズや企業ニーズの分析。アプリケーションサーバーを配備する際に注意する必要がある、一般的な問題と懸案事項について

『System Deployment Guide』

サーブレット、EJBsTM (Enterprise JavaBeansTM)、JSPTM (JavaServer PagesTM) などの J2EE コンポーネント 向け Java オープンスタンダードモデルに準拠した、Sun Java System Application Server 上で実行することを目的とした、JavaTM 2 プラットフォーム、Enterprise Edition (J2EETM プラットフォーム) アプリケーションの作成および実装。アプリケーション設計、開発ツール、セキュリティ、アセンブリ、配備、デバッグ、ライフサイクルモジュールの作成方法などについての全般的な情報。包括的な Sun Java System Application Server の用語集

『開発者ガイド』

Sun Java System Application Server 上の、JavaTM Servlet とJavaServer Pages (JSP) 仕様に従ったJ2EE web アプリケーションの作成および実装。Web アプリケーションのプログラミング概念とタスクについての説明。サンプルコード、実装上のヒント、および参考資料。結果キャッシュ機能、JSP のプリコンパイル、セッション管理、セキュリティ、配備、SHTML および CGI などについて

『Web アプリケーション開発者ガイド』

(7 2004Q2 で改訂) Sun Java System Application Server 上のエンタープライズ Bean のオープン Java 規格モデルに従った、J2EE アプリケーションの作成および実装。Enterprise JavaBeans (EJB) のプログラミング概念とタスクについての説明。サンプルコード、実装上のヒント、および参考資料。コンテナ管理持続性、読み取り専用 Bean、エンタープライズ Bean に関連付けられた XML ファイルや DTD ファイルなどについて

『Developer's Guide to Enterprise JavaBeans Technology』

(7 2004Q2 で改訂) Sun Java System Application Server 上の J2EE アプリケーションにアクセスする Application Client Container (ACC) のクライアントの作成

『Developer's Guide to Clients』

Sun Java System Application Server 環境での Web サービスの作成

『Developer's Guide to Web Services』

JavaTM Database Connectivity (JDBCTM)、トランザクション、Java Naming and Directory InterfaceTM (JNDI)、 JavaTM Message Service (JMS)、および JavaMailTM API

『Developer's Guide to J2EE Services and APIs』

カスタム NSAPI プラグインの作成

『NSAPI Developer's Guide』

(7 2004Q2 で改訂) 管理インタフェースとコマンド行インタフェースの両方からの Sun Java System Application Server サブシステムとコンポーネントの設定、管理、および配備の説明と手順。クラスタ管理、高可用性データベース、ロードバランス、およびセッションの持続性について。包括的な Sun Java System Application Server の用語集

『管理ガイド』

server.xml ファイルなど、Sun Java System Application Server の設定ファイルの編集

『管理者用設定ファイルリファレンス』

Sun Java System Application Server 運用環境のセキュリティの設定および管理。一般的なセキュリティ、証明書、および SSL/TLS 暗号化に関する情報など。HTTP サーバーベースのセキュリティについて

『セキュリティ管理者ガイド』

Sun Java System Application Server 用の J2EETM Connector Architecture (CA) コネクタのサービスプロバイダ実装の設定と管理。管理ツール、プーリングモニター、JCA コネクタの配備、およびサンプルコネクタとサンプルアプリケーションについての説明

『管理者ガイド J2EE CA Service Provider Implementation』

(7 2004Q2 で改訂) 新しい Sun Java System Application Server プログラミングモデルへのアプリケーションの移行 (特に、iPlanet Application Server 6.x、Sun ONE Application Server 7.0 からの移行)。移行例

『Migrating and Redeploying Server Applications Guide』

(7 2004Q2 で改訂) Sun Java System Application Server 製品のパフォーマンスを改善する方法とその理由

『Performance Tuning Guide』

(7 2004Q2 で改訂) Sun Java System Application Server の問題を解決するための情報

『Troubleshooting Guide』

(7 2004Q2 で改訂) Sun Java System Application Server の実行中に表示される可能性のあるメッセージ。メッセージが生成された状態について、考えられる原因とガイドラインの説明

『Error Message Reference』

(7 2004Q2 で改訂) マニュアルページに記載されている、Sun Java System Application Server で利用できるユーティリティコマンド

『Utility Reference Manual』

SunTM Open Net Environment (Sun ONE) Message Queue 3.5 ソフトウェアの使用

Sun ONE Message Queue については次の URL を参照 :

http://docs.sun.com/db/prod/entsys?l=ja


既知の問題と制限事項

この節では、Sun Java System Application Server 7 2004Q2 Standard Edition および Enterprise Edition の既知の問題とその回避方法について、次の項目別に解説します。


問題の説明にプラットフォームが明記されていない場合、その問題はすべてのプラットフォームに当てはまります。


この節は次の項目から構成されています。

インストールとアンインストール

この節では、インストールとアンインストールに関する既知の問題とその解決方法を示します。

ID

要約

4742038

インストールディレクトリの名前に英数字以外の文字が含まれていると Application Server が起動しない

インストールディレクトリの名前に英数字以外の文字 (#、空白文字など) が含まれていると、Application Server が正常に起動しません。この場合、サーバーログファイルは作成されません。Application Server のインストールディレクトリに使用できる文字は、 英数字、ダッシュ (-)、下線 (_) のみです。インストール作業の一環として既存の Java 2 SDK ディレクトリを指定するときも、同じルールが適用されます。

解決法

インストール時には、英数字、ダッシュ、下線の文字のみ使用してディレクトリ名を指定してください。

4742828

サイレントインストーラがユーザーのアクセス権をチェックしない

対話型インストーラ (GUI またはコマンド行) は、ユーザーのパーミッションが適切 (UNIX の root ユーザー) であるかどうかをチェックしますが、サイレントインストールでは、このチェックは行われません。パッケージをインストールするパーミッションがないと、インストールは途中で失敗します。

解決法

サイレントインストールは、適切なアクセス権を持つユーザーが実行してください。

4746410

Solaris 上のデフォルト以外の場所に Application Server をインストールするとき、パッケージベースのインストーラは正しい場所のディスク容量をチェックしない

Solaris で (パッケージベースのインストーラを使用して) Application Server をデフォルト以外の場所にインストールするときは、インストールプログラムは指定されたインストールディレクトリのディスク容量をチェックしません。代わりに、デフォルトのディレクトリ (/opt) のディスク容量のみをチェックします。

解決法

インストールを開始する前に /opt ディレクトリのディスク容量が 85M バイト以上あることを確認します。これは、/opt をインストールディレクトリに指定しない場合も同様です。さらに、インストールディレクトリのディスク容量が 85M バイト以上あることを確認します。

4754824

Solaris 上で、CD からインストールを実行しているときエラーメッセージが表示される

CD-ROM ドライブにボリュームを挿入すると、Solaris ボリューム管理によりシンボリック名が割り当てられます。たとえば、デフォルトの正規表現が一致している CD-ROM が 2 枚ある場合、それぞれに cdrom0 または cdrom という名前が割り当てられます。正規表現が一致している CD-ROM をさらに追加すると、cdrom2 で始まる名前が割り当てられます。このことは、vold.conf のマニュアルページで説明しています。CD から Application Server をインストールするたびに、ラベル名と数値から成るマウントポイント名が割り当てられます。CD を初めてマウントするときは、何の問題もありません。それ以降のマウントでは、インストーラが起動したときに、次のエラーメッセージが表示されます。

IOException:java.io.FileNotFoundException:/cdrom/appserver7 (No such file or directory) while loading default flavormap.properties file URL:file:/cdrom/appserver7#4/AppServer7/pkg/jre/lib/flavormap.properties

解決法

インストーラの機能にはまったく影響しません。しかし、次の解決法が用意されています。

コマンドプロンプトに su と入力し、パスワードを入力してスーパーユーザーになります。または、最初から root (スーパーユーザー) としてログインします。スーパーユーザーのコマンドプロンプト (#) が表示されます。

cdrom ディレクトリが存在しない場合は、次のコマンドで作成します。
# mkdir /cdrom

CD-ROM ドライブをマウントします。

注 : vold プロセスは、CD-ROM デバイスを管理し、マウントを実行します。/cdrom/cdrom0 ディレクトリに、CD-ROM が自動的にマウントされます。

ファイルマネージャを実行している場合は、ファイルマネージャウィンドウが開き、CD-ROM の内容が表示されます。

CD-ROM がマウントされていないため /cdrom/cdrom0 ディレクトリが空になっている場合や、CD-ROM のコンテンツを表示するファイルマネージャウィンドウが開かない場合は、次のコマンドで、vold デーモンが実行されているかどうかを確認します。
# ps -e | grep vold | grep -v grep

vold が実行されている場合は、vold のプロセス ID が表示されます。何も表示されない場合は、次のコマンドでデーモンを強制終了します。
# ps -ef | grep vold | grep -v grep

次のコマンドで vold プロセスを停止します。
# kill -15 process_ID_number

CD-ROM を手動でマウントします。
# mount -F hsfs -r ro /dev/dsk/cxtyd0sz /cdrom/cdrom0

x は CD-ROM ドライブのドライブコントローラ文字です。y は CD-ROM ドライブの SCSI ID です。z は CD-ROM が置かれているパーティション (スライス) です。

これで、CD-ROM ドライブがマウントされました。インストール時の手順については、Solaris のマニュアルで CD のインストールと設定に関する説明を参照してください。

4757687

Solaris 上で、システムに Administration Client コンポーネントがインストールされていると、Application Server を増分インストールできない

この問題は、Solaris のパッケージベースのインストールに影響します。スタンドアロンの Administration Client コンポーネントがインストールされているシステムに、Administration Client コンポーネントのインストールディレクトリ以外のディレクトリを指定して Application Server をインストールした場合、インストールに成功したというメッセージが表示されていても、この Application Server を使用することはできません。この問題の原因は、Administration Client の Solaris パッケージが、インストール済みであることを検出され、Application Server のインストールプロセスから、Administration Client がインストールされないことです。その結果、製品機能を使用するために必要なファイルが見つからないという問題が発生します。

解決法

Solaris システム上のスタンドアロンの Administration Client をアンインストールしてから、Application Server をインストールします。

Application Server の増分インストールも可能ですが、Administration Client と同じインストールディレクトリを使用する必要があります。

4976715

Microsoft Windows 上で、インストールログファイル中に不要な記述がある

Microsoft Windows への Sun Java System Application Server 7 Standard Edition のインストールでは、環境変数 %TEMP% で指定されるディレクトリに詳細なログを生成します。ログファイル名は、Sun_Java_System_Application_Server_install.b<timestamp>です。ログファイルには、インストールプロセスについての有効な説明の他に、"Continuing Multi CD installation" という記述が含まれています。

解決法

ログファイル中のこれらのメッセージは無視しても安全です。

5006942

Windows 上で、アップグレードの後は、生成されたサービスの起動タイプがデフォルトで「自動」に設定される

解決法

1. Windows サービスを開きます。

2. サービスの起動タイプを「手動」に変更します。

5018162

Linux にフルインストールをおこなう際、適切な Message Queue がインストールされていると、Message Queue パッケージが 2 つインストールされる

解決法

4.2.1.xx の Linux rpm ユーティリティのバグにより、インストールされている Sun One Message Queue (imq と識別される) が正しく認識されません。このため、Application Server が 2 つ目の Sun ONE Message Queue rpm をインストールしてしまいます。これを回避するには、システムに 4.2.0.69 バージョンの rpm をインストールするか、アプリケーションサーバーをインストールする前に Message Queue をアンインストールしてください。

Red Hat Enterprise Linux Advanced Server 3.0 では、以前のバージョンで rpm パッケージをアップグレードしていない限り、通常は 4.2.1.xx バージョンの rpm が使われています。

5025063

Linux と Solaris で、Sun Java System Web Server 6.0 にロードバランサをファイルベースでインストールすると、インスタンスがスタートせず、ログにエラーメッセージが出る

これは、WebServer 6.0 に ICU ライブラリが付属されていないためです。

解決法

ロードバランサのプラグインをインストールした後、次のコマンドを実行します。

ln -s appserverinstalldir/lib/libicu webserverinstalldir/bin/https/lib

Web サーバーインスタンスが正常に起動します。

Web サーバーと Application Server が別々のマシン上にある場合、appserverinstalldir/lib/libicu を Web サーバーマシンにコピーして、ソフトリンクをはります。

5027250

root ユーザーでない場合、サイレントインストールに失敗する

root 以外から Application Server をインストールした時の statefile を使ってサイレントインストールを行うと、次のメッセージが出て、インストールが失敗します。「インストール可能なコンポーネントが選択されていません。コンポーネント一覧が空であるか、すでにインストール済みのコンポーネントがコンポーネント一覧に含まれています。」

解決法

1. statefile を開いて編集します。

2. 「INSTALLED_AS_COMPONENTS.」で始まる行をコメントアウトします。

3. 変更した statefile を使ってサイレントインストールし直します。

サーバーの起動とシャットダウン

この節では、起動とシャットダウンに関する既知の問題とその解決方法を示します。

ID

要約

4762420

ファイアウォールの規則により、Application Server の起動に失敗する

パーソナルファイアウォールをインストールしている場合に発生する問題です。Application Server がインストールされているマシンに厳密なファイアウォール規則を適用すると、管理サーバーおよびアプリケーションサーバーインスタンスの起動時に障害が発生することがあります。管理サーバーおよびアプリケーションサーバーインスタンスは、Application Server 環境でローカル接続を確立しようとします。これらの接続はローカルのホストではなくシステムのホスト名を使ってポートにアクセスしようとするので、ローカルのファイアウォールの規則に従ってブロックされることがあります。

セキュリティ上何の問題もない処理に対して、ローカルのファイアウォールが誤った警告を生成することもあります。たとえば、Application Server がポート 3700 で TCP 接続を試行しているのに、「Portal of Doom Trojan」攻撃または同様の攻撃を受けたというメッセージが表示される場合があります。このような問題は、Application Server がローカル通信に使用するポート番号と、既知の一般的な攻撃に使用されるポート番号が重複している場合に発生します。ポート番号が重複しているかどうかの判断基準は次のとおりです。

  • 管理ログファイルとサーバーインスタンスログファイルに、接続例外と次のメッセージが書き込まれています。CORE3186: Failed to set configuration

解決法

Application Server からローカルシステム上のポートに接続できるように、ファイアウォールポリシーを変更します。

攻撃について誤った警告が生成されないようにするには、攻撃関連の規則を変更するか、Application Server が使用するポート番号を変更します。

管理サーバーおよびアプリケーションサーバーインスタンスが使用するポート番号は、Application Server のインストール先の server.xml ファイルで確認できます。
   domain_config_dir/domain1/admin-server/config/server.xml
   
domain_config_dir/domain1/server1/config/server.xml

domain_config_dir はサーバーの初期設定をおこなった場所です。次に例を示します。
Solaris 9 の統合インストールの場合:/var/appserver/domains/...
Solaris 8、9 のアンバンドルのインストールの場合:/var/opt/SUNWappserver7/domains/...

<iiop-listener> と <jms-service> のポート設定を確認します。これらのポート番号を未使用のポート番号に変更するか、ローカルマシン上のクライアントから同じマシン上のこれらのポートへ接続できるようにファイアウォールポリシーを書き換えます。

5003245

ポートの設定を変更して再起動すると、サーバーが 2 つのポートに対して待機状態となる

解決法

ポート番号を変更した後、asadmin コマンドを使ってサーバを停止 (asadmin stop-instance)、起動 (asadmin start-instance) します。

データベースドライバ

この節では、データベースドライバに関する既知の問題とその解決方法を示します。

ID

要約

4700531

Solaris 上で、ORACLE JDBC ドライバのエラーが発生する

これは、Oracle (R) 用のJDBC ドライバが、JDK 1.4 と連携して機能する場合に問題となります。Oracle 9.1 データベースと ojdbc14.jar が併用されているために、エラーが発生します。Oracle 9.0.1.3 データベースを実行している 32 ビット版 Solaris マシンにパッチを適用すれば、問題を修正できます。

解決法

Oracle の Web サイトからバグ ID 2199718 のパッチを入手し、サーバーに適用します。次の手順を実行してください。

1. Oracle の Web サイトに移動します。

2. 「patches (パッチ)」ボタンをクリックします。

3. パッチ ID フィールドに「2199718」と入力します。

4. 32 ビット版 Solaris の OS パッチをクリックします。次に、Metalink.oracle.com に移動します。

5. パッチをクリックします。

6. パッチ ID 2199718 を入力します。

7. 32 ビット版 Solaris の OS パッチをクリックします。

4991065

J2EE 1.3 に準拠するために、Oracle JDBC ドライバを適切に設定しなければならない

解決法

Type 2 および Type 4 のドライバを次のように設定してください。

1. 9.2.0.3 以降の JDBC を使用します。

2. Oracle データベースのパラメータファイル (init.ora) 中に compatible=9.0.0.0.0 を加えます。

3. ojdbc14.jar ファイルを使用します。

4. Application Server の設定を変更して JVM のプロパティを次のように定義します。

    -Doracle.jdbc.J2EE13Compliant=true

さらに、Type-2 のドライバに関しては、Application Server をスタートした環境に ORACLE_HOMELD_LIBRARY_PATH (これには $ORACLE_HOME/lib が含まれている) を定義する必要があります。たとえば、これらを asenv.conf に追加して、確実にエクスポートします。

ログ

ID

要約

5014017

Appclient ログが正常に動作しない

ファイル属性のデフォルト値が機能しない

解決法

1. ログディレクトリを作成します。

2. 新たに作成したログディレクトリへの完全なパスを sun-acc.xml ファイルに記述します。

コンソールにログを出力している場合、ログレベルはその設定 (FINE、FINEST 等) にかかわらず、「INFO」 レベルとなります。

『The Administration Guide to Clients』では、ログは acc_dir/logs/client.log にある、と記されていますが、正常に動作させるためには、ログディレクトリを作成し、そのフルパス名を sun-acc.xml ファイルに記述する必要があります。

Web コンテナ

この節では、Web コンテナに関する既知の問題とその解決方法を示します。

ID

要約

4951476

javax.ejb.EJBException: JWSDP 1.2(1.3) がインストールされていると、org/dom4j/Element がスローされる

解決法

sever.xml ファイルの server-classpath に dom4j-full.jar を追加します。このファイルは http://dom4j.org からダウンロードできます。このファイルのエントリは、server-classpath 内の appserv-jstl.jar エントリの前に置く必要があります。

4968905

多くの HADB トランザクションが例外を中断する

負荷のかかった状態では、HADB へのトランザクションのコミットに失敗したことを示すエラーメッセージが出ることがあります。server.log 内のメッセージは次のとおりです。java.ip.IOException:Error from HA Store: HADB-E-00209: The transaction was aborted.

解決法

次のリリースで解決される予定です。

4997770

HTTP 404 のエラーメッセージが、依然として「Sun ONE Application Server」 と表示する

「Sun ONE Application Server」を「Sun Java System Application Server」と読み替えてください。

Message Service とメッセージ駆動型 Beans

この節では、Java Message Service (JMS)、Sun Java System Application Server Standard and Enterprise Edition、およびメッセージ駆動型 Beans の既知の問題とその解決方法を示します。

ID

要約

4683029

MQ Solaris スクリプト内の -javahome フラグは、値に空白文字が含まれていると正しく機能しない

Sun ONE Message Queue のコマンド行ユーティリティには、その他の Java ランタイムを指定する -javahome オプションが用意されています。このオプションを使用する際、Java ランタイムのパスに空白文字を含めることはできません。空白文字を含むパスの例を示します。

/work/java 1.4

この問題は、Application Server インスタンスの起動時に発生します。Sun ONE Application Server インスタンスを起動すると、デフォルトで、対応する Sun ONE Message Queue ブローカインスタンスが起動します。このブローカは、Application Server と同じ Java ランタイムを使用するため、-javahome コマンド行オプションを使って起動します。Application Server用に設定された Java ランタイム (ブローカでも使用可能) のパスに空白文字が含まれていると、ブローカの起動に失敗します。このため、Application Server インスタンスの起動も失敗します。

解決法

Application Server の Java ランタイムのパスに空白文字が含まれていないことを確認してください。

JTS (Java Transaction Service)

この節では、JTS (Java Transaction Service) の既知の問題とその解決方法を示します。

復旧

JDBC ドライバの復旧に関する既知の問題があります。Sun Java System Application Server は、これらの問題に対していくつかの回避策を用意しています。デフォルトでは、ユーザーが明示的に指定しないかぎり、これらの回避策は使用されません。

トランザクション

server.xml ファイルでは、XA 接続と非 XA 接続の区別に res-type を使用します。これにより、データを駆動するデータソースの設定が識別されます。たとえば、Datadirect ドライバでは、同じデータソースを XA または非 XA として使用できます。

デフォルトでは、データソースは非 XA です。XA に指定してトランザクションの connpool 要素を付加するには、res-type が必要です。トランザクション内で connpool を正常に機能させるには、server.xml ファイルに次の res-type 属性を追加します。

res-type="javax.sql.XADataSource"

アプリケーションの配備

この節では、アプリケーションの配備に関する既知の問題とその解決方法を示します。

ID

要約

4725147

配備する仮想サーバーを選択できない

この場合は、仮想サーバー 2 台をまったく同じように設定し、一方をホスト、もう一方をリスナーにします。アプリケーションが 2 台目の仮想サーバーだけに配備されている場合、この仮想サーバーにはアクセスできません。これは、host:port の組み合わせで 1 台目の仮想サーバーが指定されているからです。

解決法

仮想サーバーのホスト名と元のホスト名が同じにならないようにしてください。特に、同じ HTTP リスナーを使用する場合には注意が必要です。

4994366

ejb-local-ref と ejb-link の配備エラー

解決法

Ejb-local-ref には ejb-link が必要です。ejb-local-ref を使用する時は ejb-link の値を指定してください。

4744128

EJB コンパイラで、内部クラス用の有効な Java コードを生成できない

内部クラス型を戻すエンタープライズ Bean を実装する場合、EJB コンパイラは有効な Java コードを生成できません。

public interface IStateServer {
   ....
   public StateProperties getProperties(String objectID, String variantName, IToken securityToken) throws RemoteException;

   public class StateProperties implements Serializable {
      public StateProperties() {
      }
      public String description = "";
      public String owner = "";
      public Date modifyTime = new Date();
      public String accessPermissions = "";
   }
}
public interface IStateServerEJB extends EJBObject, IStateServer {
   ....
}

メソッド getProperties は内部クラスを戻すことに注意してください。

エラーの例を示します。

D:¥AppServer7a¥appserv¥domains¥domain1¥server1¥generated¥ejb¥j2ee-apps¥smugglercom¥spss¥ssp¥state¥ejb¥StateServerEJB_EJBObjectImpl.java:133:

内部クラスの合成名を直接使用することはできません。
com.spss.ssp.state.IStateServer$StateProperties

次のコードが生成されます。
com.spss.ssp.state.IstateServer.StateProperties

次のようには記述しません。
com.spss.ssp.state.IStateServer$StateProperties

解決法

StateProperties を内部クラス以外の独立したクラスに移動させます。

4750461

Solaris SPARC で、動的再読み込み時に Application Server がクラッシュする

エンタープライズ Bean 数の多い大規模なアプリケーションを動的に読み込もうとすると、クラッシュが発生する場合があります。動的再読み込み機能は、開発環境で、アプリケーションのマイナーチェンジを迅速にテストするために使用されます。許可されているよりも多くのファイル記述子を使用しようとすると、クラッシュが発生します。

解決法

/etc/system ファイルに、形式を変えずに次の行を追加して、使用可能なファイル記述子の数を増やします。アプリケーションのサイズによって値を調節できます。

  set rlim_fd_max=8192
  set rlim_fd_cur=2048

システムを再起動します。

ベリファイア

この節では、ベリファイアに関する既知の問題とその解決方法を示します。

ID

要約

4742545

スタンドアロンベリファイアから EJB クラスが見つからないというエラーが報告される

次のメッセージが表示され、テストに失敗することがあります。EJB Class Not Found. EJB JAR ファイルによって使用されるエンタープライズ Bean が、同一の EAR アプリケーション内の別の EJB JAR ファイル内にあるその他のエンタープライズ Bean を参照する場合、テスト時に障害が発生します。コネクタ (RAR) に依存する EAR ファイルを検証しようとした場合も、障害メッセージが表示されます。これは、RAR バンドルを、RAR バンドルファイルに依存するエンタープライズ Bean が格納されている EAR ファイル内にパッケージ化する必要がないからです。障害 (コネクタ関連の障害を除く) を報告するのは、スタンドアロンベリファイアだけです。配備コマンドや管理インタフェースによって呼び出されたベリファイアでは、この障害は報告されません。

解決法

アプリケーション EAR のパッケージ化が正しいことを確認します。ユーティリティ JAR ファイルを使用している場合は、EAR ファイル内にパッケージ化されます。参照エラーを解決するには、asadmin または管理インタフェースを使って配備バックエンドからベリファイアを呼び出します。コネクタ関連の障害が発生する場合は、ベリファイアのクラスパスに、必要なクラスを持つ JAR ファイルを配置します。install_root/bin/verifier[.bat] ファイルを開き、JVM_CLASSPATH 変数の末尾に LOCAL_CLASSPATH 変数を追加します。LOCAL_CLASSPATH 変数にローカルでクラスを追加したあと、ベリファイアを実行します。

ロードバランサ

この節では、ロードバランサに関する既知の問題とその解決方法を示します。

ID

要約

4761151, 4825429, 4981545

ロードバランサのプラグインを経由して SSL と非 SSL の要求を断続的に送っていると、中間形式と基本認証で失敗する。「502 Bad Gateway」というエラーメッセージが表示される。デフォルトの設定では、プロキシからコンテナへの接続が持続されない

Application Server の配備および配備取消、キープアライブのタイムアウト、ロードバランサ接続プールでの接続が古くなったことなどにより、ロードバランサが Application Server への接続を持続できなくなります。この問題が発生すると、ロードバランサからの要求は失敗することがあり、エラーページが表示されます。この問題は通常、配備/配備取消やその他の設定変更が頻繁に行われたり、テストされたりする、開発環境で発生します。

解決法

appserver でのキープアライブのタイムアウトを 0 に設定してください。

Web ベースの管理インタフェースを使って、次の手順を実行してください。

1. 管理コンソールを起動します。

2. HTTP Server -> Tuning を選択します。

3. ページの最後のテキストボックス、「HTTP 持続的接続のタイムアウト」フィールドに 0 を入力します。

4. 変更を適用して appserver を再起動します。

コマンド行インタフェースを使用する場合は次の手順を実行してください。

1. 次の行を追加します。appserver の init.confKeepAliveTimeout 0 を追加してください。

2. asadmin reconfig コマンドを実行します。

3. appserver を再起動します。

4962735

Linux 上で、ロードバランサおよび sec_db ファイルをインストールすると Apache Web Server 1.3.27 が起動しない

解決法

次の行を /src/MakeFile の「End of automatically generated section,」の後、「OBJS= ¥」の直前に挿入してください。また、アプリケーションサーバーのライブラリが特定の場所にインストールされていることを確認してください。

LIBS+= -licuuc -licuil8n -lnspr4 -lpthread -lxerces-c -lsupport -lnsprwrap -lns-httpd40 LDFLAGS+= -L/space/SJSAS/installations/lib.

変数の意味は次のとおりです。/space/SJSAS/installations はアプリケーションサーバーがインストールされている場所です。詳細は、『Sun Java System Application Server 管理ガイド 』の付録、「Apache Web Server のコンパイル」を参照してください。

5018537

フェイルオーバーが実行されている時、Identity Server/Application Server のインテグレーションで「Service unavailable」というエラーが表示される

Loadbalancer.xml は Web モジュールのコンテキストルートに「/」を使用しています。フェイルオーバーの後はコンテキストルートが存在しないため、「Default」が新しい JROUTE cookie のパスに指定されます。結果として、ブラウザ側では 2 つの JROUTE cookie が存在することになります。

1. 古い JROUTE cookie は「/」をパスとする失敗したインスタンスを指します。

2. 新しい JROUTE cookie は「/Default」をパスとする新しいインスタンスを指します。

ブラウザは常に古い cookie (1) を使おうとするため、結果として nd failover のリダイレクトとなり、ブラウザ自身に障害が起こることがあります。

解決法

すべての Web モジュールに特定のコンテキストルートを指定します。次に例を示します。

<web-module context-root="appl" enabled="true" disable-timeout-in-minutes="60" error-url="appl-lberror.html" />
<web-module context-root="app2" enabled="true" disable-timeout-in-minutes="60" error-url="app2-lberror.html" />

フェイルオーバーの後、JROUTE は「/appl」をパスとして取得し、正常に動作します。

5007720

Web モジュール中で invalid value for error-url に対するログメッセージが不適切である

loadbalancer.xmlweb-module タグの error-url 属性が、次のように無効な値に設定された場合、

<web-module context-root="app1" enabled="true" disable-timeout-in-minutes="60" error-url="abc"/>

ログメッセージは次のように表示されます。

warning (11113):reports:lb.configurator: XML_VALIDATOR_WARNING: Invalid format for the error-url sun-http-lberror.

しかし、正しくは次のような表示でなければなりません。

warning (20015):reports:lb.configurator: XML_VALIDATOR_WARNING: Invalid format for the error-url abc

高可用性

この節では、高可用性に関する既知の問題とその解決方法を示します。

ID

要約

4831332

他のユーザーが「su」コマンドを使用してスーパーユーザーになると、HADBM の「create」コマンドが動作しない

「su」を使用して root になると、HADBM によって特定のパスに関するアクセスの問題が報告されることがあります。HADBM には、ユーザー "root" の環境情報が必要です。

解決法

"su -" を使用して、再試行します。

4843422

HADB 接続プールが失われ、サーバー接続数が不足する

多数のアプリケーションを配備すると、HADB への最大接続数を超えて、アプリケーションが失敗することがあります。

解決法

アプリケーションを配備した後で、HADB サーバーを再起動します。

4846432, 4846691, 4972881

HADB-hadbm 管理クライアントで、データベースの状態を正しく表示できない

ある管理クライアントマシンで HADB インスタンスを作成すると、管理クライアントして使われている他のマシンからはそのインスタンスにアクセスできません。

たとえば、マシン 1 を使用して「hadbm create hadb-database」コマンドを実行すると、マシン 2 からの「hadbm status hadb-databas」など他の hadbm コマンドは動作しません。データベースが存在しないというメッセージが示されます。

解決法

方法 1 : データベースを作成したのと同じクライアントを使用する。

方法 2 : 他のクライアントマシンを使う場合は、最初に、新しいクライアントマシンに HADB のインスタンスを認識させる必要があります。新しいクライアントマシンにHADBのインスタンスを認識させるには、次の手順を実行してください。

1. マシン 2 に HADB 管理クライアントをインストールします (インストールされていない場合)。

2. configpath と同等のパスをマシン 2 に作成します (作成されていない場合)。

3. このディレクトリに、いずれかのサーバーマシン (あるいはマシン 1) の configpath ディレクトリにある .cfg.def ファイルをコピーします。

4. HADBM が設定パスを認識するように、.cladmrc ファイルにエントリを追加します。

設定ファイルは次の手順で検索します。
hadbm が、.cladmrc ファイルの中から、特定のデータベースに対する設定ファイルパスが記されているエントリを探します。hadbm を実行するホームディレクトリに .cladmrc ファイルが存在しなければなりません。.cladmrc ファイルのデータベースエントリは次の形式でなければなりません。
databasename:configpath: howtoaccess

例 1

hadb:/home/hadb/config:NFSMNT

例 2

hadb1:/dsk0/dbdef:machine2

1 番目の例では、設定パスは NFS でアクセスできますが、2番目の例では、machine2 という名のホストマシンからローカルでしかアクセスできません。NFS またはローカルファイルシステムから、どちらかを選択します。

4855623

いずれかのノードホストがダウンしている時、hadbm stop コマンドが終了しない

ネットワーク上の問題により HADB ノードが shutdown メッセージを受け取らない場合、hadbm stop コマンドはデータベースを完全に停止できないことがあります。通常は、hadbm コマンドを完了するのに 60 秒以上かかります。この場合、hadbm stop/delete コマンドが動作しません。停止するノードを指定する必要があります。

解決法

1. “hadbm status --nodes” コマンドを使用して、引き続き有効になっているノードを確認します。

2. 一部実行中の各ノードに対して、hadbm stopnode -f node_number を実行します。

4861337

hadm stopdb 実行中にアクティブデータノードに障害が起こると、hadm startdb コマンドの実行に失敗する

データベースを起動できない場合、hadbm 「status」コマンドは「non-operational」を返します。

解決法

この問題を解決するには、次の手順を実行してください。

1. hadbm clear --fast を実行します。

このコマンドによって、システム内の各マシンについて 「address in use」という障害が報告される場合は、ログインし、「clu_」で始まるすべてのプロセスを強制終了します。

2. hadbm clear --fast を実行し直します。

これにより、すべてのデータが消え、データベースが再起動します。

3. セッションストアを作成し直します。

セッションストアの詳細は、『Sun Java System Application Server 管理ガイド』を参照してください。

4958827

子プロセスのトランザクションが応答しない

ホストマシンが複数の HADB を収納し、すべてのノードがそれぞれのデバイスを同一のディスクに設置すると、ディスク I/O がボトルネックになります。HADB プロセスは非同期 I/O を待機しているため、ノード監視プログラムの heartbeat check には応答しません。したがって、ノード監視プログラムはこのプロセスを再起動することになります。この問題は、どのようなオペレーティングシステムでも起こる可能性がありますが、今のところ、Red Hat Linux AS 2.1 および 3 で確認されています。

解決法

同一のマシンに存在する、異なる HADB ノードのデバイスに対して、別々のディスクを使用します。

4895236

負荷状態のときに、持続範囲が session に指定され、持続頻度が time-based に設定されている場合、サーバーによって次の例外が報告されることがある

java.io.IOException:Error from HA Store:HADB-E-11939:Primary key constraint violation

この警告は、複数のスレッドが HADB に対して同一のセッションを挿入したときに表示されます。しかし、レコードは安全に HADB に記録され、セッションからの後のリクエストで、セッションのコンテンツも間違いなく更新されるため、問題はありません。

負荷状態のときに、持続範囲が session に指定され、持続頻度が time-based の場合は、次の例外が報告されることがあります。

java.io.IOException:Error from HA Store:HADB-E-11939:Primary key constraint violation
at com.sun.appserv.ee.web.sessmgmt.HAStore.executeStatement(HAStore.java:2202)
at com.sun.appserv.ee.web.sessmgmt.HAStore.insertSessionBlob(HAStore.java:1957)
com.sun.appserv.ee.web.sessmgmt.HAStore.save(HAStore.java:1409)
at org.apache.catalina.session.PersistentManagerBase.writeSession(PersistentManagerBase.java:759)
at org.apache.catalina.session.PersistentManagerBase.processMaxIdleBackups(PersistentManagerBase.java:1097)
com.sun.appserv.ee.web.sessmgmt.HAManagerBase.processPersistenceChecks(HAManagerBase.java:88)
org.apache.catalina.session.PersistentManagerBase.run(PersistentManagerBase.java:1182)
at java.lang.Thread.run(Thread.java:536)

解決法

この警告は無視しても問題ありません。ユーザーアプリケーションに影響はありません。

5042351

データベースインスタンスを作成し、それにノードを追加すると、データベース作成以後に追加されたノード上で、新しく作成されたテーブルがフラグメント化されない

hadbm addnodes が再フラグメントをおこなうと、追加されたノードを使うことができるのは、addnodes 実行前に作成されたテーブルのみです。

解決法

データベースを作成したら、ユーザーデータを保存するまでノードを追加しないでください。最初から複数のノードが必要な場合は、ノードをすべて追加してからデータベースを作成します。ノードを追加する場合は、ユーザーデータが作成されるまで待ちます。ユーザーデータの作成前では、追加されたノードからはデータの保存ができません。

なし

デフォルトのガベージコレクタが頻繁に作動し、HADB 接続が失われる

アプリケーションサーバーの負荷が高い場合、作成されたオブジェクトを削除するためデフォルトのガベージコレクタが頻繁に作動します。結果として、アプリケーションサーバーのスループットが低下し、応答時間が長くなります。また、これにより hadb 接続が失われることもあります。

解決法

ガベージコレクションを並行ガベージコレクションに変更すると、ガベージコレクションのスレッドが他のスレッドと並行して実行されるので、高負荷サーバーには有効です。server.xml のファイルの jvm-options セクションに、次のオプションを手動で追加します。

"-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:SoftRefLRUPolicyMSPerMB=1"

さらに、admin Console を使って、JVM オプションに同じオプションを追加します。

ダブルネットワークでの HADB 設定

2 つのサブネット上にダブルネットワークで設定された HADB は、Solaris SPARC 上では正常に動作します。しかし、一部のハードウェアプラットフォームでのオペレーティングシステムまたはネットワークドライバの問題で、Solaris x86 および Linux プラットフォームではダブルネットワークを適切に処理できないことが確認されました。これにより、HADB に次のような問題が発生します。

Multipathing と Trunking は、Sun Java System Application Server 7 Enterprise Edition ではサポートされていません。詳細は Sun Support にお問い合わせください。

サーバーの管理

この節では、次のトピックを取り上げます。

コマンド行インタフェース (CLI)

この節では、コマンド行インタフェースに関する既知の問題とその解決方法を示します。

ID

要約

4676889

シングルモードで実行する CLI コマンドの文字数が 256 文字を超える場合、オーバーフローが発生する

UNIX (R) では、シングルモードで実行する CLI コマンドの文字数が 256 文字を超える場合、コマンドの実行に失敗し、「Command Not Found (コマンドが見つかりません)」というエラーが表示されます。

CLI の制限ではありません。

次に例を示します。

create-jdbc-connection-pool --instance server4 --datasourceuser admin --datasourcepassword adminadmin --datasourceclassname test --datasourceurl test --minpoolsize=8 --maxpoolsize=32 --maxwait=60000 --poolresize=2 --idletimeout=300 --connectionvalidate=false --validationmethod=auto-commit --failconnection=false --description test sample_connectionpoolid)

解決法

1. 実行するコマンドの文字数が 256 文字を超える場合は、マルチモードを使用してください。

2. シングルモードを使用する必要がある場合は、OpenWindows コマンドツール (cmdtool) を使ってコマンドを実行してください。

管理インフラストラクチャ

この節では、管理インフラストラクチャに関する既知の問題とその解決方法を示します。

ID

要約

4686003

HTTP の QOS 制限が適用されない

サービス品質 (QOS) では、最大 HTTP 接続数と帯域幅を指定できます。これらの属性の制限値を超えると、クライアントに 503 エラーが戻されます。しかし、管理インタフェースを使って QOS を有効にすると、サーバーは QOS の制限を適用しなくなります。

解決法

QOS 機能をすべて有効にするには、仮想サーバーの obj.conf ファイル内のデフォルトオブジェクトの先頭に AuthTrans fn=qos-handler 行を手動で追加します。qos-handler サーバーアプリケーション関数 (SAF) と obj.conf 設定ファイルについては、『Developer's Guide to NSAPI』を参照してください。

4740022

SNMP: 新しいインスタンスサーバーを追加して起動すると、END OF MIB メッセージが表示される

インスタンスサーバーとサブエージェントをシャットダウンしないで新しいインスタンスを追加し、起動すると、END OF MIB メッセージが表示されます。

解決法

1. 新しいインスタンスを表示するには、サブエージェントとすべてのインスタンスサーバープロセスをシャットダウンします。各サーバーで、「Monitoring (監視)」の「Enable SNMP Statistics Collection (SNMP 統計収集を有効)」をオンに設定します。その後、各インスタンスサーバーを再起動し、サブエージェントプロセスを 1 つだけ再起動します。

2. サブエージェントがすでに実行中の場合は、これ以上起動しないでください。Application Server をインストールするときは、必ずマスターエージェントとサブエージェントを 1 つずつ使用します (全ドメイン、全インスタンスに共通)。

4865739

server.xml 内のインスタンスポートのネガティブテストによって domains.bin が壊れる

ポート番号または IP アドレス、あるいはその両方に英字が含まれている場合は、新しいインスタンスを作成できないため、現在のインスタンスが管理不能になります。

解決法

1. server.xml ファイルとバックアップ用の server.xml ファイルを編集し、ポート番号または IP アドレス (あるいはその両方) を訂正します。

2. keepmanualchanges=true オプションを使って asadmin reconfig コマンドを実行します。

3. 管理インタフェースを使用し、「Administration (管理)」ツリーでインスタンス名を選択して、インスタンスを停止します。

4. 管理サーバーとアプリケーションサーバーインスタンスを再起動します。

管理インタフェース

管理インタフェースを使用するときは、ブラウザがキャッシュからではなくサーバーから最新のページを取り出す設定になっているかどうかを確認してください。一般に、デフォルトのブラウザ設定では問題は発生しません。

この節では、管理用グラフィカルユーザーインタフェースに関する既知の問題とその解決方法を示します。

ID

要約

4725473

管理インタフェース: Nickname list. に外部証明書のニックネームが表示されない

Application Server 管理インタフェースを使って外部証明書をインストールした場合、外部暗号化モジュール上にインストールされた証明書を使って HTTP リスナーで SSL を有効にしようとすると問題が発生します。証明書は正しくインストールされていますが、管理インタフェースに証明書のニックネームが表示されません。

解決法

1. 管理ユーザーとして、Sun ONE Application Server のインストールマシンにログインします。

2. HTTP リスナーと外部暗号化モジュール上にインストールされた証明書をリンクします。asadmin コマンドを実行します。asadmin コマンドの詳細については、asadmin(1M) のマニュアルページを参照してください。

/sun/appserver7/bin/asadmin create-ssl
   --user admin --password
password
   --host host_name
   --port 8888
   --type http-listener
   --certname nobody@apprealm:Server-Cert
   --instance server1
   --ssl3enabled=true
   --ssl3tlsciphers +rsa_rc4_128_md5
   http-listener-1

このコマンドは、証明書とサーバーインスタンスをリンクします。証明書のインストールは行いません (証明書は管理インタフェースを使用してインストール済み)。証明書と HTTP リスナーのリンクは確立されていますが、HTTP リスナーは非 SSL モードでリッスンします。

3. 次の CLI コマンドを使って、HTTP リスナーが SSL モードでリッスンするように設定します。

/sun/appserver7/bin/asadmin  set
   --user admin
   --password
password
   --host host_name
   --port 8888
   server1.http-listener.http-listener-1.securityEnabled=true

このコマンドは、サーバーインスタンスのリッスンモードを非 SSL から SSL へ切り替えます。

上記の手順が完了すると、管理インタフェースに証明書が表示されます。

4. これで、管理インタフェースを使って HTTP リスナーを編集できる状態になりました。

4760939

SSL: 「Certificate Nickname (証明書ニックネーム)」に certutil によって生成された自動署名証明書が表示されない

自動署名証明書が certutil によって生成されていると、管理インタフェースに「Certificate Nickname (証明書ニックネーム)」が表示されません。

解決法

自動署名証明書を使用する場合は、server.xml ファイルを手動で編集する必要があります。

4991824

管理コンソールから SSL を有効化した後、再起動するとタイムアウトとなる

解決法

SSL を有効化した後は、インスタンスを再起動する代わりに、サーバーをいったん停止して起動します。

4988332

何の変更もしていないのに、「Apply Changes Required (変更の適用が必要です) 」のアイコンが表示される

管理コンソールでは、アプリケーションサーバーインスタンスのプロパティまたは設定を表示すると、設定がまったく変更されていなくても「変更の適用が必要です」というアイコンが表示されます。

解決法

このメッセージは1回だけ表示され、アプリケーションサーバーに対しては何の変更も加えません。このメッセージが表示されたら、「変更を適用する (Apply Changes)」を選択してください。

サンプルアプリケーション

この節では、サンプルアプリケーションに関する既知の問題とその解決方法を示します。

ID

要約

4739854

asadmin を使ったリソースの配備方法の説明がない

一部のサンプルのマニュアルには、asadmin コマンドを使ってアプリケーションを配備するようにと記述されているだけで、必要なリソースを作成する手順が記載されていません。

解決法

asadmin コマンドを使ってアプリケーションまたはリソースを配備できます。サンプルの build.xml ファイルからは詳細情報を取得できます。詳細情報は、asant deploy の実行結果からも確認できます。

JDBC/BLOB の例の場合、次の手順で、asadmin を使ってリソースを作成します (ホスト名は jackiel2 とし、管理サーバーのユーザー名、パスワード、ポートは、それぞれ admin、adminadmin、4848 とします)。

asadmin create-jdbc-connection-pool --port 4848 --host jackiel2 --password adminadmin --user admin jdbc-simple-pool

--datasourceclassname com.pointbase.jdbc.jdbcDataSource  --instance server1

asadmin  set --port 4848 --host jackiel2 --password adminadmin --user admin

server1.jdbc-connection-pool.jdbc-simple-pool.property.DatabaseName=jdbc:pointbase:server://localhost/sun-appserv-samples

4993620

複数の XA 接続があるとき、afterCompletion() が false となる

samples/transactions/ejb/cmt/bank の改訂版を使用- BankBean ejb は2種類のデータベース、1 つは当座預金口座、もう 1 つは貯蓄預金口座に接続します。oracle.jdbc.xa.client.OracleXADataSource データソース向けに設定した 2 つの接続プールが作成してあり、グローバルトランザクションが有効になっています。

スタンドアロンのクライアントを実行し、振替、当座預金の残高確認、貯蓄預金の残高確認をおこなうと、次の3つのリモート呼び出しが発生します。transferBalance()getCheckingBalance() および getSavingsBalance()

すべてのデータベースオペレーションは正しく実行されていますが、getCheckingBalance() 呼び出しに対する afterCompletion は、committed=false となります。

たとえば、次のことが実行されます。

appclient -client /space/S1AS/installation/domains/domain1/server1/applications/j2ee-apps/transactions-bank_13/transact -name BankClient -textauth com.sun.jndi.cosnaming.CNCtxFactory iiop://localhost:3700

結果は次のようになります。複数の XA 接続で、データベースの読み取り操作のみ実行するステートフルセッション Bean の tx は成功していますが、afterCompletion() は false を返します。

解決法

現在の JTS の実装は、これをサポートしません。

5016748

Java クライアントを使った SFSB フェイルオーバーのサンプルアプリケーション実行について、説明が正しくない

サンプルアプリケーションのマニュアルにある、SFSB フェイルオーバーのサンプルアプリケーションを実行する java コマンドが正しくない。

解決法

Java クライアントでの sfsbFailover 実行について、正しい説明は次のとおりです。

ACC なしのローカルまたはリモート RMI/IIOP ベースのクライアントで、sfsbFailover を実行します。

ACC (アプリケーションクライアントコンテナ) のインタフェースなしで Java クライアントを実行します。ローカルマシン (ashost) または リモートマシンで実行できます。クライアントアプリケーションはコマンド行から実行します。

   java -Djava.library.path=$AS_INSTALL/lib:/usr/lib/mps

-Dcom.sun.CORBA.connection.ORBSocketFactoryClass=com.sun.enterprise.iiop.EEIIOPSocketFactory
-Dorg.omg.PortableInterceptor.ORBInitializerClass.com.sun.appserv.ee.iiop.EEORBInitializer
-Dorg.omg.CORBA.ORBClass=com.sun.enterprise.iiop.POAEJBORB
-Dorg.omg.CORBA.ORBSingletonClass=com.sun.corba.ee.internal.corba.ORBSingleton
-Djavax.rmi.CORBA.UtilClass=com.sun.corba.ee.internal.POA.ShutdownUtilDelegate
-classpath <CP> <ClientApp>
java.naming.factory.initial=com.sun.appserv.naming.S1ASCtxFactory
com.sun.appserv.iiop.loadbalancingpolicy=ic-based
com.sun.appserv.iiop.endpoints=host:port,host:port

各変数の意味は次のとおりです。

  • CP には、クラスパス用に sfsbFailover.jar, appserv-rt.jar, appserv-ext.jar and appserver-rt-ee.jar,appserv-admin.jar の 5 つの jar ファイルが含まれています。

sfsbFailoverClient.jar のファイルは、配備ディレクトリから現在のディレクトリにコピーされます。install_dir/domains/domain1/server1/applications/j2ee-apps/sfsbFailover_1

他の jar ファイルは AS インストールから現在のディレクトリにコピーされます。install_dir/lib

クライアントアプリケーションをリモートマシンで実行する場合は、 sfsbFailoverClient.jar と他の3つの appserver jar ファイルをクライアントマシンに移動する必要があります。ACC あり、または ACC なしのアプリケーションクライアントを実行する例として、sfsbFailoverClient.jar を使いましたが、このファイルには、ACC を使わない場合に最低限必要なもの以外のファイルも含まれています。ACC なしのリモートマシン上でこの例を実行するのに最低限必要なファイルは、appserv-ext.jarsfsbFailoverClient.jar から抽出した次のファイルです。

5016748
(続き)

samples/ejb/stateful/simple/ejb/Cart.class - リモートインタフェース
samples/ejb/stateful/simple/ejb/CartHome.class - ホームインタフェース
samples/ejb/stateful/simple/ejb/_Cart_Stub.class - リモートスタブ
samples/ejb/stateful/simple/ejb/_CartHome_Stub.class - ホームスタブ
samples/ejb/stateful/simple/client/CartClient.class - クライアントアプリケーションのメインクラス

appserv-ext.jar のファイルはクライアントマシンに必要です。このファイルには、クライアントが必要とする javax.ejb パッケージ、および必要とする可能性のある J2EE API の実装とインターフェースが含まれているためです。

  • ClientApp とは、クライアントプログラムを表します。この例では次のものを指します。samples.ejb.stateful.simple.client.CartClient
  • URL とは、ホスト名 (ashostなど) およびORBポート (3700など) を持ったクラスタの一部として稼動している アプリケーションサーバーのリストで、コンマで区切られたものを指します。たとえば、

     ashost:3700,ashost:3701,ashost:3702

このコマンドの完全な例は次のとおりです。

java -Djava.library.path=$AS_INSTALL/lib:/usr/lib/mps

-Dcom.sun.CORBA.connection.ORBSocketFactoryClass=com.sun.enterprise.iiop.EEIIOPSocketFactory
-Dorg.omg.PortableInterceptor.ORBInitializerClass.com.sun.appserv.ee.iiop.EEORBInitializer
-Dorg.omg.CORBA.ORBClass=com.sun.enterprise.iiop.POAEJBORB
-Dorg.omg.CORBA.ORBSingletonClass=com.sun.corba.ee.internal.corba.ORBSingleton
-Djavax.rmi.CORBA.UtilClass=com.sun.corba.ee.internal.POA.ShutdownUtilDelegate
-classpath
sfsbFailoverClient.jar:appserv-ext.jar:appserv-rt.jar:appserv-rt-ee.jar:appserv-admin.jar
samples.ejb.stateful.simple.client.CartClient
java.naming.factory.initial=com.sun.appserv.naming.S1ASCtxFactory
com.sun.appserv.iiop.loadbalancingpolicy=ic-based
com.sun.appserv.iiop.endpoints=localhost:3700,localhost:3701

このコマンドを実行する前に、 LD_LIBRARY_PATH に $AS_INSTALL/lib と /usr/lib/mps を組み込みます。

対話型コンソールにより、SFSB、InitialContext、ホーム参照、およびリモート参照などの高可用性をテストできます。InitialContext を作成して、「Enter」キーを押します。参照は、他の利用可能なサーバーインスタンスにフェイルオーバーされます。ホーム参照やリモート参照についても同様に、フェイルオーバーの動作テストができます。

5016656

PointBase の起動スクリプト対して、サンプルドキュメントが正しくないパスを指している

startserver.sh のパスが誤って、 pointbase_install_dir/tools/server/startserver.sh と書かれています。

解決法

PointBase の起動スクリプトへの正しいパスは、pointbase_install_dir/client_tools/server/startserver.sh です。

5016647

JWSDP 1.0_01 の Coffee Break アプリケーションでの Indent-amount 問題

Coffee Break のサンプルアプリケーションを実行すると、次のエラーが表示されます。

ERROR: output property 'indent-amount' not recognized

解決法

これは JWSDP 1.0_01 の既知の問題です。これを回避するには、JWSDP のバージョン 1.1より新しいものを使用してください。

ORB/IIOP リスナー

この節では、ORB/IIOP-Listener に関する既知の問題とその解決方法を示します。

ID

要約

4743419

IPv6 アドレスの DNS アドレス検索が失敗する場合、IPv6 アドレスでは RMI-IIOP クライアントが機能しない

IPv6 アドレスの DNS 検索が失敗する場合、IPv6 アドレスでは、RMI-IIOP (Remote Method Invocation-Internet Inter-ORB Protocol) のクライアントが機能しません。

解決法

IPv6 アドレスを検索できるように、配備サイトに DNS (Domain Name Service) を設定します。

5017470

Application Server から割り当てられるデフォルトの IIOP ポート番号が、ランダムに作成される

ORB のリスナーまたは IIOP のエンドポイントが作成されるとき、 IIOP のポート番号は、そのどちらが作成されるかによって変わります。

1. 新しい ORB リスナーを作成する > 「指定する必要あり」を意味する * マークはついていませんが、IIOP ポート番号を必ず指定してください。表示されるデフォルト値は 1072 ですが、サーバーのインストール時に作成されたデフォルトのリスナーのリスナーポート番号は 3700 です。

2. 新しい IIOP エンドポイントを作成する > デフォルトの IIOP ポート番号は 3600 と表示されます。ポート番号を指定せずにエンドポイントを作成すると、そのポートの値は null となります。

3. 新しいサーバーインスタンスが作成されると、デフォルトの ORB リスナーポート番号は任意の大きな値、通常は 30000 以上となります。

解決法

IIOP のポート番号は 32767 を越えてはなりません。もし、設定された値がこの範囲外である場合、フェイルオーバーの際に接続障害が発生します。サーバーに対して IIOP リスナーの設定をおこなうときは、ポート番号が確実にこの範囲内に収まるようにしてください。

マニュアル

この節では、マニュアルに関する既知の問題とその解決方法を示します。

ID

要約

4970418

「create-ssl」のマニュアルページで、--certname と cert_name の間にスペースが入っていない

解決法

--certname オプションの正しい構文は次のとおりです。

--certname cert_name

4993601

Sun ONE Application Server 7, Enterprise Edition から、古いヘルプファイルが表示される

解決法

以前に Sun Java System Application Server の異なるバージョン (Sun ONE Application Server 7, Enterprise Edition など) をインストールしたことがある場合は、MANPATH 環境変数が現在のインストールディレクトリを指していることを確認してください。

5008199

「delete-jvm-options」のマニュアルページの例部分の文書化エラー

この例は、正しくは次のとおりです。

asadmin delete-jvm-options --user admin --password adminadmin
--host localhost --port 4848 --instance server1 -- "-Djava.security.policy=/var/opt/SUNWappserver7/domains/domain1/server1/config/server.policy"


再配布可能なファイル

Sun Java System Application Server バージョン 7 2004Q2 には、再配布可能なファイルは含まれていません。


問題の報告およびフィードバックの方法

Sun Java System Application Server に問題が発生した場合は、次のいずれかの方法で Sun のカスタマサポートにお問い合わせください。

最善の問題解決のため、サポートに連絡する際には次の情報をご用意ください。

Sun Java System Application Server についての議論がある、次のようなインタレストグループに登録するのも便利でしょう。

コメントの送付先

Sun では、マニュアルの改善に努めており、お客様のご意見、ご提案をお待ちしております。Web 上のフォームでご意見をお送りください。

指定の場所に、マニュアルの正式な書名と Part No. をご記入ください。Part No. は、7 桁か 9 桁の番号で、マニュアルのタイトルページまたは最初のページに記載されています。たとえば、このリリースノートの Part No. は 817-7577 です。


補足情報

Sun Java System についての有益な情報は、以下のインターネットアドレスから入手することができます。


Copyright © 2004 Sun Microsystems, Inc. All rights reserved.

本書で説明する製品で使用されている技術に関連した知的所有権は、Sun Microsystems, Inc. に帰属します。特に、制限を受けることなく、この知的所有権には、http://www.sun.com/patents の一覧に示される米国特許、および米国をはじめとする他の国々で取得された、または申請中の特許などが含まれています。

SUN PROPRIETARY/CONFIDENTIAL.

U.S. Government Rights - Commercial software. Government users are subject to the Sun Microsystems, Inc. standard license agreement and applicable provisions of the FAR and its supplements.

使用は、使用許諾契約の条項に従うものとします。

本製品には、サードパーティが開発した技術が含まれている場合があります。

本製品の一部は、カリフォルニア大学からライセンスされている Berkeley BSD システムに基づいて開発されている場合があります。

Sun、Sun Microsystems、Sun ロゴ、Java、および Solaris は、米国およびその他の国における Sun Microsystems, Inc. の商標または登録商標です。すべての SPARC 商標は、米国 SPARC International, Inc. のライセンスを受けて使用されている、米国および他の国々における同社の商標または登録商標です。