WebSphere Application Server, Version 6.0.x   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows

             目次と検索結果のパーソナライズ化

アプリケーション・デプロイメントの問題

アプリケーションをデプロイ、インストール、またはプロモートする際に、問題が発生することがあります。 このトピックでは、問題を解決する方法を示します。

どのような問題が発生しましたか?

まず以下の点をチェックしてください。

類似した問題が見つからない場合、 あるいは提供された情報でその問題が解決しない場合は、 問題が確認され、文書化されているかを調べてください。

使用可能な オンライン・サポートにはヒントや技術情報、修正が記載されているので、参考にしてください。該当する問題が見当たらない場合は 、IBM からのトラブルシューティングのヘルプ を参照してください。

wsadmin ツールを使用してアプリケーションをインストールしたが、そのアプリケーションが「アプリケーション」>「エンタープライズ・アプリケーション」に表示されない

アプリケーションをインストールした際に、構成を保管しなかった可能性があります。
  1. app_server_root/installedApps ディレクトリーに、そのアプリケーションのサブディレクトリーがあることを確認します。
  2. $AdminApp list コマンドを実行して、 表示された項目の中に当該アプリケーションがないことを確認します。
    • bin ディレクトリーで 、wsadmin.bat または wsadmin.sh コマンドを実行します。
    • wsadmin プロンプトから $AdminApp list と入力し、 表示された項目の中に問題のアプリケーションがないことを確認します。
  3. wsadmin ツールを使用してアプリケーションを再インストールします。終了する前に、wsadmin ツールで $AdminConfig save コマンドを実行してください。

デプロイされたアプリケーションを保管できない

デプロイされたアプリケーションを保管できない場合は、オープンされているファイル数がオペレーティング・システムの制限を超えている可能性があります。

[Linux] SuSE9 またはその他の Linux プラットフォームでは、オープンできるファイル数を増やして問題を解決するか、または規律を使用してファイルをクローズするようにアプリケーションを変更することができます。 同時にオープンできるファイル数を増やすには、多数のファイルをオープンする必要のあるプロセスを呼び出す前に、以下のコマンドをシェルで実行します。
ulimit -n number_of_files

各プロセスでファイルの最大数を調整する権限を持つのはルートだけです。 以下のステップを実行して、規律を使用してファイルをクローズするようにアプリケーションを変更します。

  1. ファイルをオープンして作業を完了したら、ファイルの close メソッドを呼び出して、ファイル・ハンドルが再びオペレーティング・システムに解放されるようにします。
  2. 例えば、java.io.FileInputStream クラスおよび FileOutputStream クラスを使用して、それらの close メソッドを呼び出し、ストリームに関連付けられたすべてのシステム・リソースを解放することができます。

アセンブリー・ツール、管理コンソール、または wsadmin ツールで、 「java.lang.RuntimeException: Failed_saving_bytes_to_wor_ERROR_」というエラーが 表示される [Windows]

アセンブリー・ツールで デプロイ済みコードを生成しようとしているとき、管理コンソールにアプリケーションまたはモジュールを インストールしているとき、あるいは wsadmin ツールを使用してアプリケーションまたはモジュールを インストールしているときにこのエラーが発生した場合は、システムの一時ファイルのパスが 長すぎる可能性があります。

この問題を確認するには、 システムの TEMP および TMP 環境変数を調べます。 環境変数が長いと、EJB デプロイメント・ツールがアクセスするファイル名のパスが長くなります。

この問題を解決するには、以下のようにします。
  1. すべての WebSphere Application Server プロセスを停止し、すべての DOS プロンプトを閉じる。
  2. TMP および TEMP 環境変数を、C:¥TMP および C:¥TEMP のように短いものに設定する。
  3. アプリケーションを再インストールする。
あるいは、アプリケーションのリブート、再デプロイ、または再インストールを試してみてください。

wsadmin コマンド $AdminApp installInteractive または $AdminApp install を実行中の WASX7015E エラー

この問題には、考えられる原因が 2 つあります。

アセンブリー・ツールで生成したデータ定義言語 (DDL) が、ターゲット・プラットフォーム上で SQL エラーをスローする

別のプラットフォームのアセンブリー・ツールによって生成されたデータ定義言語 (DDL) ステートメントを実行しようとして SQL エラーを受信した場合 (例えば、Windows 上で設計されたコンテナー管理パーシスタンス (CMP) エンタープライズ Bean を UNIX オペレーティング・システムのサーバー上にデプロイしようとしている場合) は、以下の作業を行ってください。
  • DDL ステートメントをブラウズして、特定のユーザー ID およびパスワードの依存関係を調べ、必要があれば、訂正する。
  • DDL ステートメントをブラウズして、特定のサーバー名の依存関係を調べ、必要があれば、訂正する。
  • ベンダーのメッセージ参照を参照して、特定の SQL エラーに関する原因と推奨アクションを調べる。 IBM DB2 の場合、このメッセージ参照は、http://www.ibm.com/cgi-bin/db2www/data/db2 /udb/winos2unix/support/index.d2w/report にてオンラインで参照できます。
Windows オペレーティング・システムまたは AIX や Linux などのオペレーティング・システムで作成した DDL ファイルを実行した後に以下のエラーを受け取った場合は、ファイル・フォーマットの違いが問題になっている可能性があります。
SQL0104N  An unexpected token "CREATE TABLE AGENT  (COMM DOUBLE,  PERCENT  DOUBLE,  P" was found following "        ".  Expected tokens may include:  " ".  SQLSTATE=42601
この問題を解決するには、以下を行います。
  • [AIX] [HP-UX] [Solaris] [Windows] vi エディターで DDL を編集して、 各行頭の文字 Ctl-M を除去する。
  • [Linux] Linux プラットフォーム上でアプリケーションの EAR ファイル用の デプロイメント・コードを再生成する。

管理コンソールまたは wsadmin ツールを使用してアプリケーションをインストールするときに、 エラー・メッセージ「ADMA0004E: Validation error in task Specifying the Default Datasource for EJB Modules」が戻される

管理コンソールまたは wsadmin コマンド・プロンプトを使用してアプリケーションをインストールしようとしたときに以下のエラーが発生する場合。
AppDeploymentException: [ADMA0014E: Validation failed. 
ADMA0004E: Validation error in task Specifying the Default Datasource for EJB Modules  JNDI name is not 
specified for module beannameBean Jar with URI filename.jar,META-INF/ejb-jar.xml. このモジュールに属する各 CMP Bean にデータ・ソースが指定されていません。
各 CMP Bean にデータ・ソースを指定するか、モジュール全体にデフォルトのデータ・ソースを指定してください。]
原因の 1 つとしては、WebSphere Application Server バージョン 4.0 では、 各 JAR 内で CMP Bean ごとにデータ・ソースを定義する必要があったことが考えられます。 バージョン 5.0 およびそれ以降のリリースでは、1 つのコンテナー管理パーシスタンス (CMP) Bean に対して 1 つのデータ・ソースを指定することも、JAR ファイル内のすべての CMP Bean に対して 1 つのデフォルト・データ・ソースを指定することもできます。 つまり、インストールの対話 (管理コンソール内のインストール・ウィザードなど) ではデータ・ソース・フィールドはオプションですが、インストールの最後に実行される検証では、少なくとも 1 つのデータ・ソース・フィールドが指定されているかどうかがチェックされます。

この問題を解決するには、再度インストールを実行して、デフォルトのデータ・ソースを指定するか、 または CMP タイプの Enterprise Bean ごとにそれぞれデータ・ソースを指定します。

wsadmin ツールを 使用する場合は、$AdminApp installInteractive filename コマンドを使用して、 インストール中にデータ・ソースを要求するプロンプトが出されるようにするか、またはデータ・ソースを 応答ファイルで提供します。

$AdminApp install コマンドに対するオプションとしてデータ・ソースを指定します。

この構文の詳細については、 wsadmin ツールによるアプリケーションのインストール を参照してください。

アーカイブ・ファイルのリソース WEB-INF/ibm-web-bnd.xmi をロードできない

Web アプリケーション tmp.war は、 WebSphere Application Server バージョン 5.0 および 5.1 上ではインストールできますが、WebSphere Application Server バージョン 6 サーバーでは インストールに失敗します。アプリケーションのインストールが失敗するのは、WEB-INF/ibm-web-bnd.xmi ファイルに、基礎となる WCCM モデルが認識しなくなった xmi タグが含まれているためです。

以下のエラー・メッセージが表示されます。

IWAE0007E アーカイブ "tmp.war" のリソース "WEB-INF/ibm-web-bnd.xmi" をロードできませんでした
[2/24/05 14:53:10:297 CST] 000000bc SystemErr     R
AppDeploymentException:
com.ibm.etools.j2ee.commonarchivecore.exception.ResourceLoadException:
IWAE0007E アーカイブ "tmp.war" のリソース "WEB-INF/ibm-web-bnd.xmi" をロードできませんでした
[2/24/05 14:53:10:297 CST] 000000bc SystemErr     R
com.ibm.etools.j2ee.commonarchivecore.exception.ResourceLoadException:
IWAE0007E アーカイブ "tmp.war" のリソース "WEB-INF/ibm-web-bnd.xmi" をロードできませんでした
!Stack_trace_of_nested_exce!
com.ibm.etools.j2ee.exception.WrappedRuntimeException: Exception occurred loading
WEB-INF/ibm-web-bnd.xmi
!Stack_trace_of_nested_exce!

この問題に対処するには、ibm-web-bnd.xmi ファイルから xmi:type=EJBLocalRef タグを除去します。 このタグは以前に相互文書参照タイプのマッチングに使用されていたため、タグを除去してもアプリケーションには影響しません。 これで、アプリケーションが WebSphere Application Server v5.1、v6.0、 およびそれ以降のリリースで機能するようになりました。

管理コンソールでエンタープライズ・アプリケーションをインストールすると「 Timeout!!!」というエラーが表示される

このエラーは、 デプロイされていないエンタープライズ・アプリケーションをインストールしようとした場合に発生することがあります。

以下の方法でこの問題を解決します。
  • アセンブリー・ツールfile_name.ear ファイルを開き、「デプロイ」をクリックします。 このアクションにより、Deployed_file_name.ear という名前のファイルが作成されます。
  • 管理コンソールで、デプロイされた .ear ファイルをインス トールします。

EJB モジュール を含むアプリケーションのデプロイ時に、NameNotFoundException メッセー ジを受け取る

EJB デプロイメント・ツールが アプリケーションのインストール中に稼働するように指定していて、NameNotFoundException メッセージが表示されて インストールに失敗する場合は、入力 JAR または EAR ファイルがソース・ファイルを含んでいないことを 確認してください。入力 JAR ファイルまたは EAR ファイルにソース・ファイルが存在する場合、EJB デプロイメント・ツールはデプロイメント・コードを生成する前に、再ビルドを実行します。

この問題に対処するには、ソース・ファイルを除去するか、クラス・パスにすべての独立クラスおよびリソース・ファイルを含めるかのいずれかを行います。 それ以外では、ソース・ファイルにより、または独立クラスとリソース・ ファイルへのアクセス不足によって、サーバーでのアプリケーションの再ビ ルド中に問題が生じる可能性があります。

アプリケーションのインストール時に EJB デプロイを呼び出すと、 例外が発生する [Windows]

アプリケーションのインストール時に EJB デプロイメント・ツールが実行されるよう指定したときに、コマンド行が長すぎることによるエラーが発生してインストールが失敗する場合、インストール時に生成されたデプロイメント・コマンドが、Windows プラットフォームのコマンド行の文字制限を超えていることが原因です。

この問題を回避するには、EAR ファイル名の長さを短くする、 EAR ファイル内の JAR ファイル名の長さを短くする、 デプロイメントで指定するクラスパスまたは他のオプションを短くする、 または Windows システムの %TEMP% 位置を変更して、パスの長さを短くするなどの対策を講じます。

バージョン 5.x 以前 のバージョン向けに生成された EJB JAR ファイルのインストー ル時に、コンパイル・エラーを受け取り、EJB デプロイが失敗する

WebSphere Application Server バージョン 5.x またはそれ以前のバージョンで稼働するようにビルドされた EJB モジュールを使用する旧バージョンのアプリケーションをインストールすると、コンパイル・エラーを起こしたり、 EJB デプロイが失敗したりします。 EJB JAR ファイルは、旧バージョンで作成されたコード向けに、Java ソースを含みます。旧バージョンの Java ソースは、 5.x またはそれ以前のバージョン向けに作成されましたが、WebSphere Application Server バージョン 6.x 製品にデプロイする場合は、バージョン 6.x ランタイム JAR ファイルを使用して コンパイルされます。

この問題に対処するには、アプリケーションの .ear ファイルからすべての.java ファイルを除去します。 Java ソース・ファイルを除去後に、アプリケーションをサーバーに正常にデプロイできます。




関連タスク
デプロイメントのトラブルシューティング
参照トピック    

ご利用条件 | フィードバック

最終更新: Jan 22, 2008 12:07:38 AM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/rtrb_installappprob.html