デフォルトでは、asenv.conf によってポイントされる domain1 の AS_ACC_CONFIG 変数のハードコードされた値が $INSTALL/lib/package-appclient.xml にあります。domain1 を削除して新たなドメインを作成した場合、AS_ACC_CONFIG 変数は新たなドメイン名で更新されません。その結果、package-appclient スクリプトの処理が失敗します。
次のいずれかを行います。
domain1 はそのままにしておき、その前後に別のドメインを作成します。
domain1 を削除し、$INSTALL/lib/package-appclient.xml の domain1 にハードコードされた値を新しいドメイン名で置き換えます。domain1 がない場合、新たなドメインが作成されるたびにこれを行う必要があります。
同一の Application Server インストール上では、backup-domain コマンドと restore-domain コマンドを使用してドメインをミラーリングできません。これは、asadmin restore-domain コマンドにドメイン名を変更するオプションがあっても、元の名前ではなく、別の名前でドメインを復元できないからです。バックアップされたドメインの名前を正常に変更したように見えても、名前を変更されたドメインの起動は失敗します。ドメイン設定のエントリは変更されておらず、startserv および stopserv は元のドメイン名を使用してパスを設定するからです。
restore-domain で使用するドメイン名は、元の backup-domain コマンドで使用したドメイン名と同じである必要があります。Application Server 8.2 の backup-domain コマンドと restore-domain コマンドが動作するのは、同一マシンで同一ドメインをバックアップおよび復元する場合だけです。
J2SE 1.4.x、5.0、またはそれ以降のバージョンは、Application Server で設定できます。J2SE 5.0 プラットフォームの重要な特徴は、JMX エージェントを起動できることです。サーバーの起動時にシステムプロパティーを明示的に設定すると、JMX エージェントがアクティブになります。
次に例を示します。
name="com.sun.management.jmxremote" value="true" name="com.sun.management.jmxremote.port" value="9999" name="com.sun.management.jmxremote.authenticate" value="false" name="com.sun.management.jmxremote.ssl" value="false"
JMX プロパティーを設定してサーバーを起動すると、Application Server VM 内で新しい jmx-connector サーバーが起動します。この場合は、望ましくない副作用の 1 つとして、管理機能が悪影響を受け、Application Server の管理 GUI や CLI で予期しない結果が発生することがあります。問題は、組み込みの jmx-connector サーバーと新たな jmx-connector サーバーとの間で衝突が発生することにあります。
jconsole または何らかの JMX 互換クライアントを使用する場合には、Application Server とともに起動する標準の JMX コネクタサーバーを再利用することを検討してください。
サーバーの起動時に、次に示すような行が server.log に作成されます。ここで指定されている JMXServiceURL に接続し、資格を正常に指定した後、同様の管理および設定操作を実行することができます。次に例を示します。
[#|2004-11-24T17:49:08.203-0800|INFO|sun-appserver-ee8.1|javax.enterprise. system.tools.admin|_ThreadID=10;|ADM1501: Here is the JMXServiceURL for the JMXConnectorServer: [service:jmx:rmi:///jndi/rmi://hostname:8686/management/ rmi-jmx-connector]. This is where the remote administrative clients should connect using the JSR 160 JMX Connectors.|#]
詳細については、『 Sun Java System Application Server 8.2 Administration Guide』を参照してください。
Web モジュールが仮想サーバーのデフォルト Web モジュールである場合、その Web モジュールの再配備または配備取り消しを行おうとすると、次のエラーが発生します。
Trying to undeploy application from domain failed; Virtual Servers [server] have <WEB-MODULE-NAME\> as default web module. Please remove the default web module references first. ; requested operation cannot be completed Virtual Servers [server] have <WEB-MODULE-NAME\> as default web module. Please remove the default web module references first.
この時点で domain.xml がエラー状態になっています。管理コンソールは、配備された Web アプリケーションの一覧を表示できない可能性があります。ドメインを停止したあとに再起動したとしても、この状況は変わりません。
デフォルト Web モジュールを変更します。
管理コンソールで仮想サーバーのページを表示し、デフォルト Web モジュールを空にするか、別の Web モジュールに変更します。
CLI で、domain をターゲットとして指定し Web モジュールの配備を取り消します。
# asadmin undeploy --target domain <WEB-MODULE-NAME\> |
これで管理コンソールの表示が正しくなります。必要に応じて Web モジュールを再度配備できます。
AMX API を使用して PE にアプリケーションを配備し、そのアプリケーションが参照されないと、Application Server GUI はアプリケーションの表示中にエラーをスローします。AMX では、アプリケーションの参照を明示的に処理する必要があります。たとえば、アプリケーションの配備時に DeployedItemRefConfig を明示的に作成する必要があります。配備プロセスを簡単にするには、PE に参照が存在すると見なしますが、これは Application Server GUI での問題を引き起こします。
リソースまたはアプリケーションを作成したら、それらへの参照を必ず作成します。
Application Server のドメインまたはサーバーが、関連付けられた設定の java-config 要素の java-home 属性によってポイントされる JDK を使用しません。
該当のサーバーインストール内のすべてのドメインに対して Application Server プロセスが使用する JDK は、appserver-installation-dir /config/asenv.conf ファイルによって決まります。使用される JDK は、このファイル内のプロパティー AS_JAVA によって決まります。これはインストール時に設定されます。インストール後に別の JDK を Application Server プロセスが使用するようにするには、別の JDK をポイントするようにこの値を編集します。この変更によって、このインストール内のすべてのドメインが影響を受けることに注意してください。
asenv.conf ファイルを手動で変更する場合は有効性がチェックされないため、変更時に注意が必要です。AS_JAVA の値を修正する場合は、製品のマニュアルで JDK のバージョンの最低限の要件を確認してください。
現在の JDK コードでは、/dev/poll セレクタはセレクタが使用するために 8192 pollfd エントリの配列を割り当てます。これが nofiles ulimit を超過するため、「引数が正しくありません」のエラーで失敗します。さらに、selector.select() が壊れているため、起動時に MQ に接続する Application Server のソケットサービスが IOException で失敗します。
pollfd ファイルの記述子制限を増やします。これには次の 2 つの方法があります。
ルートユーザーとしてシェル上で ulimit -n 8193 を実行します。
ファイル記述子の数値の強い制限値を 8193 以上に増やします。
ulimit -n -H コマンドで強い制限値を確認します。
8193 よりも小さい場合は、/etc/system を編集して、set rlim_fd_max=8193 コマンドを追加します。
マシンをリブートします。
ドメインのマスターパスワードにパーセント文字 (%) が含まれるときにドメインが起動しません。
ドメインのマスターパスワードにパーセント文字 (%) を含めないようにしてください。これは、新しいドメインを作成するとき、および既存のドメインのマスターパスワードを変更するときに適用されます。
次の内容を JVM プロキシ設定に追加すると、サーバーが起動しません。
<jvm—options>-Dhttp.proxyHost=webcache.east.sun.com</jvm—options> <jvm—options> -Dhttp.proxyPort=8080</jvm—options> <jvm—options>-Dhttp.nonProxyHosts="mssp.ctu.gov|*.ctu.gov|localhost" </jvm—options> |
* 文字を挿入すると、No Class Def Found エラーが発生します (スレッド main java.lang.NoClassDefFoundError: com/sun/enterprise/security/store/IdentityManager の例外)。| 文字を挿入すると、サーバーの起動を待機する起動スクリプトがタイムアウトします。
この機能は、ファイアウォールの内側に存在し、外部サーバーと内部サーバーのどちらにもアクセスすることが必要な Application Server の配備 (およびポータル配備) をサポートするために重要です。この例として、Portal Server URL Scraper があります。これらの設定は、URL Scraper が外部ソースからコンテンツを取得するために必要です。
install-dir/config/asenv.conf ファイルを編集し、AS_NATIVE_LAUNCHER="true" の行を AS_NATIVE_LAUNCHER="false" に変更します。