InfoDirectory使用手引書
目次 索引 前ページ次ページ

第5部 保守編> 第13章 トラブル発生時の対処

13.5 JNDIの対処

起動ができない場合

【現象1】

 コンソールに以下のようなメッセージが表示される。

Error occurred during initialization of VM
または
Could not create the Java virtual machine.

【原因】

 Javaの起動パラメタに誤りがある

【対処】

 Javaの起動オプション(-Xms,-Xmx)を確認してください。システムに実装されている物理メモリとの関係が以下のようになっているか確認してください。大きすぎる値、小さすぎる値の場合、コンソールのメッセージも確認も参考にしてください。

-Xmsの値 < 1/4 *(実メモリ)
-Xmxの値 < 1/2 *(実メモリ)
-Xmsの値 < -Xmxの値

【現象2】

 コンソールに以下のようなメッセージが表示される。

Exception in thread "main" java.lang.NoClassDefFoundError: javax/naming/XXXXXXXX
または
javax.naming.CommunicationException: IPアドレス:DSAのポート番号 [Root exception is java.lang.ClassNotFoundException: com.fujitsu.ssl.FjSSLSocketFactory]

【原因】

 実行に必要なjarファイルが利用可能ではありません。

【対処】

 開発環境の準備を参照して、適切にjarファイルを配置するか、Java起動コマンドの- classpath(- cp)オプションにjarファイル名をフルパスで設定してください。

【現象3】

 コンソールに以下のようなメッセージが表示される。

javax.naming.CommunicationException: IPアドレス:DSAのポート番号 [Root exception is java.lang.UnsatisfiedLinkError: no XXXX(ライブラリ名) in java.library.path]

【原因】

 SSL通信時に必要となるライブラリが利用可能ではありません。

【対処】

 メッセージのXXXXの部分に表示されているライブラリが格納されているディレクトリがPATH環境変数に設定されているか確認してください。

【現象4】

 コンソールに以下のようなメッセージが表示される。

java.io.FileNotFoundException: ファイル名 (アクセスが拒否されました。)
または
javax.naming.CommunicationException: IPアドレス:DSAのポート番号 [Root exception is com.fujitsu.ssl.SSLException: FjSSLSocket:SSLENVFILE is not exists.]

【原因】

 JNDIの環境変数に指定したJNDIトレースファイル("com.sun.jndi.ldap.trace.ber"で指定)または、SSL環境ファイル("user.sslenvfile"で指定)または、SSLログファイルディレクトリ("user.ssllogdir"で指定)自身か、それらを格納するディレクトリに対して、現在実行しているユーザに対するアクセス権が設定されていません。

【対処】

 ファイル自身が存在するかどうか、また、ファイルおよびファイルを格納するディレクトリに対して、現在実行しているユーザに対する読込み権/書込み権(もしくは変更権)が設定されているか確認してください。

処理中にエラー復帰する場合

【現象1】

 コンソールに以下のようなメッセージが表示される。

OutOfMemory
または
javax.naming.CommunicationException

【原因】

 負荷が高く、処理の上限に近い状態である。

【対策】

 マシンの稼動状態を確認してください。負荷が高く、処理の上限に近い状態である場合、不要なアプリケーションやファイルがないか確認し可能であれば終了または削除してください。高負荷状態が改善されたことを確認後、アプリケーションを再度起動し目的の操作を行ってください。
 上記対処で改善しない場合、JNDIの対処にしたがって資料を採取し、技術員に連絡してください。

【現象2】

 コンソールに以下のようなメッセージが表示される。

javax.naming.XXXXXXException

【原因】

 InfoDirectoryサーバとの通信中になんらかのエラーが発生しました。

【対処】

 JNDIに関するトラブルを参照し、該当する事例がある場合、その対処方法にしたがって対処してください。

アプリケーション実行中に異常終了する場合

【原因】

 プロセスが処理中に不正なメモリ領域にアクセスしました。

【対処】

 アプリケーションを実行したディレクトリに"hs_err_pidXXXX.log"や"core"ファイルがある場合、そのファイルを取得後、JNDIの対処にしたがって資料を採取し、技術員に連絡してください。

応答が返ってこない場合

【原因】

 以下の原因が考えられます。

【対処】

 アプリケーションを終了させる前に、以下の方法で資料を採取してください。
応答が返ってこないコンソールをアクティブにし、CTL+ALT+Breakキーを同時に押します。コンソール上に、アプリケーションのフルスレッドダンプを取得することができます。この情報をカット&ペーストにより保存しておいてください。
 環境変数に指定している値が適切か、またはマシンに搭載しているメモリが適切か確認してください。
 マシンの稼動状態を確認してください。負荷が高く、処理の上限に近い状態である場合、不要なアプリケーションやファイルがないか確認し可能であれば終了または削除してください。高負荷状態が改善されたことを確認後、アプリケーションを再度起動し目的の操作を行ってください。
 アプリケーションは以下の方法で停止します。

その他の場合

 上記で解決できない場合、JNDIの対処にしたがって資料を採取し、技術員に連絡してください。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005