Interstage Application Server トラブルシューティング集 |
目次
索引
![]() ![]() |
第6章 J2EEアプリケーション開発・運用時の異常 | > 6.3 Interstage JMSの異常時の対処 |
下表によくある問題とその対処方法を示します。
問題 |
主な原因 |
対処 |
---|---|---|
JNDI定義情報にTopicConnectionFactory、またはQueueConnectionFactoryが見つからない。 |
JNDIサブコンテキストが正しくない。 |
正しいJNDIサブコンテキストを使用しているか確認してください。 |
誤ったTopicConnectionFactory名、QueueConnectionFactory名が使用された。 |
すべての名前は大文字、小文字を区別します。 |
|
|
拡張システムでJMSアプリケーションを起動する場合は、Java(TM)VMのシステムプロパティ“com.fujitsu.interstage.isas.SystemName”に拡張システム名を設定する必要があります。javaコマンドの-Dオプションを使用して拡張システム名を設定してください。 |
|
JNDI定義情報にTopic、またはQueueが見つからない。 |
イベントチャネルが作成されていない。 |
esmkchnlコマンドを使用して、イベントチャネルが作成されているか確認してください。 |
JNDIサブコンテキストが正しくない。 |
正しいJNDIサブコンテキストを使用しているか確認してください。 |
|
誤ったTopic名、Queue名、チャネル名、グループ名が使用された。 |
すべての名前は大文字、小文字を区別します。 |
|
|
拡張システムでJMSアプリケーションを起動する場合は、Java(TM)VMのシステムプロパティ“com.fujitsu.interstage.isas.SystemName”に拡張システム名を設定する必要があります。javaコマンドの-Dオプションを使用して拡張システム名を設定してください。 |
|
JNDI名、クライアント識別子およびDurable Subscription名の制限。 |
使用可能な文字種は、アルファベット(大文字小文字ともに)、数字、ピリオド(.)、コロン(:)、アンダースコア(_)、ハイフン(-)、スラッシュ(/)です。スラッシュはJNDI名のアトミック名の区切り文字として認識されます。 |
正しい名前を使用してください。 |
SubscriberがSession.commit()またはMessage.acknowledge()などでメッセージの受信確認を行っているのに、イベントサービスのesmonitorコマンド画面でのQueueCountが減らない。 |
closeメソッドを呼ばずにSubscriberを終了した(アプリケーションの異常終了などを含む)可能性があります。
これにより、イベントチャネルにプロキシ(接続情報)が残ったため、イベントチャネルからデータが減らないということが考えられます。 |
esmonitorコマンドを使用して、イベントチャネルの状態(ConsumerCount)を確認してください。 |
イベントサービスのesmonitorコマンドによりイベントチャネルにメッセージの蓄積が確認できる状態で、JMSアプリケーションを起動してもイベントチャネルからメッセージを受信できない。 |
Point-To-Pointメッセージングモデルにおいて、メッセージ受信のトランザクション処理中にアプリケーションが終了し、トランザクションタイムアウトまで受信中であったメッセージが配信されないことが考えられます。 |
“イベントサービス運用時の異常”の“アプリケーション運用中の異常”に記載されている“コンシューマアプリケーションの異常終了(接続情報を保存していない場合)”を参照してください。 |
od60003の情報メッセージがシステムログに出力される。 |
メッセージがイベントチャネルにない場合に出力されることがあります。 |
Interstage Application Sever V5.0L10/ V5.0L10A/ V5.0L10B/5.0/5.0.1の場合: 本メッセージが出力されても、メッセージの受信に問題はありません。 |
Interstage Application Server V5.0L20/V5.0L20A/5.1/5.1.1の場合: 本メッセージが出力されても、メッセージの受信に問題はありません。 |
||
NoClassDefFoundErrorが発生する。 |
動作環境の設定に誤りがあります。 |
必要な製品が正しくインストールされ、環境変数CLASSPATHが正しく設定されていることを確認してください。 |
javax.naming.NamingException: .GlobalTransactionMode nothingが発生する。 |
グローバルトランザクション機能を使用するための設定に誤りがあります。 |
JNDI環境プロパティcom.fujitsu.ObjectDirector.CORBA.GlobalTransactionModeにTrueが指定されていることを確認してください。 |
JMS運用コマンドを実行した場合に“Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion' has value '1.n', but '1.n' is required.”のメッセージがコンソールに出力される。 |
Interstage Java実行環境サーバパッケージ以外のJDKがインスールされているため、JMS運用コマンドが正常に動作しません。 |
Interstage Application Sever V5.0L10/ V5.0L10A/ V5.0L10Bの場合: 以下のことを確認してください。
または、以下の手順でJMS運用コマンドを実行してください。 |
Interstage Application Server V5.0L20/V5.0L20Aの場合: 以下のことを確認してください。
または、以下のディレクトリ(インストールパスはデフォルト)に格納されているJava環境設定ファイル(java_config)に使用するJavaのインストールディレクトリを設定後、JMS運用コマンドを実行してください。
設定形式 JDKDIR=javaのインストールディレクトリ(注) 設定例 C:\jdkにインストールしたJDKを使用する場合: |
||
JMSException |
|
“メッセージ集”を参照して、ユーザの対処を実施してください。 |
目次
索引
![]() ![]() |