Interstage Application Server トラブルシューティング集
|
目次
索引

|
8.2 クライアントアプリケーションの異常
クライアントアプリケーションが異常終了したりループ状態になった場合には、原因を取り除いた後、クライアントアプリケーションを再起動してください。
javaまたはjreコマンドが見つからない場合
javaまたはjreコマンドが見つからない場合は、“Interstage Java実行環境サーバパッケージ(Linuxの場合はJava実行環境)”または“Apworks クライアント運用パッケージ”がインストールされ、正しく設定されていることを確認してください。
クライアントで例外が発生した場合
クライアントで以下の例外が発生した場合は、それぞれの説明に従ってください。
- java.rmi.MarshalException: CORBA COMM_FAILURE
以下の可能性が考えられます。
- EJBアプリケーション(サーバ)との通信時間がCORBAサービスの無通信監視時間をオーバしている。
- SSLの環境設定が誤っている(SSLによる暗号化通信機能を使用している場合のみ)。
- メソッド名が256文字より長い。
以下についてそれぞれ確認してください。
[EJBアプリケーション(サーバ)との通信時間がCORBAサービスの無通信監視時間をオーバしている可能性がある場合]
- EJBアプリケーションがプログラムミスにより無限ループしていないか。
- サーバに過度の負荷がかかる状態になっていないか。
- EJBアプリケーションとの送受信のデータ量が異常に大きくないか。
- EJBアプリケーションが、データベースの排他待ち状態になっていないか。
- EJBアプリケーションと通信可能な状態にあるか。(ネットワークに問題がないか。)
- 接続クライアント数がInterstageの環境設定時に設定したシステム定義(isgendef)範囲内か。
- クライアントアプリケーションとEJBアプリケーションで共通のクラスを使用するようなインタフェースとしている場合、同一のクラスファイルを使用しているか(ファイルの作成日付、サイズなどで確認してください)。
[SSLの環境設定が誤っている可能性がある場合(SSLによる暗号化通信機能を使用している場合のみ)]
- 詳細については、“セキュリティシステム運用ガイド”を参照し、確認してください。
[メソッド名が256文字より長い可能性がある場合]
- メソッド名に256文字より長い名前が指定されていないか。
- JavaからIDLに変換される時に変換規則が適用されて、変換後のメソッド名が256文字より大きくなっていないか。
変換規則の詳細は、“J2EEユーザーズガイド”の“IDL変換規則に関する補足資料”を参照してください。
- NoClassDefFoundError: org/omg/CORBA/ORB
- CORBAサービスのクライアントがインストールされ、正しく設定されていることを確認してください。
- NoClassDefFoundError: javax/naming/InitialContext
- EJBサービスのクライアントがインストールされ、正しく設定されていることを確認してください。
- NoClassDefFoundError: javax/ejb/EJBObjectまたは
NoClassDefFoundError: javax/naming/NamingException
- Interstageがインストールされているサーバマシン上でクライアントアプリケーションを動作させている場合、Interstage Java実行環境サーバパッケージ(Linuxの場合はJava実行環境)でインストールしたjavaコマンドを使用しているか確認してください。また、クライアントの環境が正しく設定されているか確認してください。クライアントの環境設定についての詳細は、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
クライアントからのlookup処理で例外が発生した場合
クライアントからのlookup処理で例外が発生した場合は、以下について確認してください。
- javax.naming.NameNotFoundException: nnn is invalid (nnn:EJBアプリケーション名)
- 正しい名前でlookup処理を行っているかを確認してください。
- javax.naming.NameNotFoundException: nnn not found (nnn:EJBアプリケーション名)
- 正しい名前でlookup処理を行っているかを確認してください。
- 当該EJBアプリケーションがインストールされているか確認してください。
- javax.naming.NameNotFoundException:NamingContextPackage.NotFoundまたはjavax.naming.NameNotFoundException:NamingContextPackage.CannotProceedまたはjavax.naming.NameNotFoundException: NamingContextPackage.InvalidName
- 正しい名前でlookup処理を行っているかを確認してください。
- クライアントからのlookup処理で、Interstage V3.1以前のEJB Deployment ツールを使用してDeploymentしたEntity Beanを指定していないか確認してください。
- マルチスレッドで処理が行われていないか確認してください。クライアントアプリケーションがマルチスレッドで動作する場合の注意事項については、“J2EEユーザーズガイド”の“クライアントアプリケーションを作成する”を参照してください。
- interstageの変更を行っていないかどうか確認してください。詳細は、“J2EEユーザーズガイド”の“運用する”を参照してください。
- 該当EJBアプリケーションのインストール時に、-Nオプションを指定し、インストールしていないか確認してください。また、OD_or_adm コマンドを使用しネーミングサービスへ登録した名前(ロードバランス機能利用時は、ロードバランスオブジェクトグループ名)が正しいか確認してください。
- javax.naming.NameNotFoundException: org.omg.CORBA.NO_IMPLEMENT
- ネーミングサービスが起動されていることを確認してください。
- ロードバランス機能を利用している場合は、odadministerlbコマンドで設定したインプリメンテーションリポジトリIDが正しいか確認してください。
- javax.naming.NameNotFoundException: org.omg.CORBA.COMM_FAILURE
- クライアントからネーミングサービスにアクセス可能な状態になっているかを確認してください。
- クライアントの環境設定が正しく行われているか確認してください。詳細は、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
- javax.naming.NameNotFoundException: java.lang.NullPointerException
- クライアントの環境設定が正しく行われているか確認してください。詳細は、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
- NameNotFoundException( nnn + " is invalid") (nnn:lookup名)
- 正しい名前でlookup処理を行っているかを確認してください。
- java.lang.ExceptionInInitializerError: org.omg.CORBA.INITIALIZE
- クライアントアプリケーションの環境が正しく設定されているか確認してください。クライアントの環境設定については、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
- javax.naming.NoInitialContextException:
- EJBサービスのクライアントがインストールされ、正しく設定されていることを確認してください。クライアントの環境設定については、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
- クライアントアプリケーションを起動する際に、以下の環境プロパティを指定しているか確認してください。
- -Djava.naming.factory.initial=com.fujitsu.interstage.ejb.jndi.FJCNCtxFactoryForClient
- javax.naming.NamingException: javax.naming.CommunicationException: nnn:bbb [Root exception is java.net.ConnectException: Connection refused: no further information] (nnn:ホスト名、bbb:ポート番号)
または
javax.naming.NamingException: javax.naming.AuthenticationException: [LDAP: error code ss - Invalid Credentials] (ss:コード番号)
または
javax.naming.NamingException: com.fujitsu.interstage.j2ee.security.FJSVj2eeSecurityException
- InfoDirectoryの動作環境に異常がある可能性があります。DSAの作成/起動が正しく行われているか確認してください。詳細は、“InfoDirectory使用手引書”を参照してください。
- セキュリティ管理環境定義ファイルが正しく設定されているかを確認してください。セキュリティ環境定義ファイルの設定方法についての詳細は、“J2EE ユーザーズガイド”の“J2EEアプリケーションのセキュリティ”を参照してください。
- javax.naming.NamingException: javax.naming.NamingException: Certification failed
- ユーザID、パスワードに割り当てられたセキュリティロールが見つかりません。正しいユーザID、パスワードでlookup処理を行っているかを確認してください。
- セキュリティ管理環境定義ファイルが正しく設定されているかを確認してください。セキュリティ環境定義ファイルの設定方法についての詳細は、“J2EE ユーザーズガイド”の“J2EEアプリケーションのセキュリティ”を参照してください。
クライアントからのnarrow処理で例外が発生した場合
クライアントからのnarrow処理で例外が発生した場合は、以下について確認してください。
- java.lang.ClassCastException: [narrow()]
- narrow処理を行っているEJBアプリケーションのHomeインタフェースクラス型(narrow処理の第2パラメタで指定している型)と、lookup処理を行っているEJBアプリケーションのHomeインタフェースクラス型が正しいか確認してください。
また、クライアントアプリケーション環境に設定した、クライアント配布物がlookup処理を行っているEJBアプリケーションのクライント配布物であるか確認してください。
- クライアントの環境が正しく設定されているか確認してください。
クライアントの環境設定についての詳細は、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
クライアントからのメソッド呼出しで例外が発生した場合
- クライアントからのcreate()メソッドでNO_IMPLEMENT例外が発生した場合は、当該EJBアプリケーションが起動されていることを確認してください。
また、ロードバランスを使用して運用を行っている場合は、ロードバランスの設定が正しいかどうか確認してください。
- クライアントからのcreate()メソッド、またはビジネスメソッドで、BAD_OPERATION例外が発生した場合は、当該EJBアプリケーションのHomeインタフェース、またはRemoteインタフェースが変更されている可能性があります。当該EJBアプリケーションのHomeインタフェース、またはRemoteインタフェースを確認し、再度クライアントアプリケーションの構築を行ってください。
また、以下の制限によりエラーが発生している可能性があります。この場合、JDK1.3を使用してください。
- JDK/JRE1.2.2を使用する場合で、Entity Beanを高速に呼び出すBeanに定義した場合、復帰値がjava.util.Enumeration、またはjava.util.Collectionのfinderメソッドは使用することができません。
java.rmi.RemoteException: CORBA OBJ_ADAPTER 1179257480 Noが発生した場合
Light EJBコンテナ機能を使用する場合、EJBコンテナに配備されたEJBアプリケーションに、カストマイズツールの定義情報(2)タグの「ローカル呼び出し」を“する”が指定されていないか確認してください。“する”が指定されている場合は“しない”を指定して、再度EJBコンテナを起動して実行してください。
アプレットのlookup処理で例外が発生した場合
クライアントアプリケーションをJavaアプレットとして実行し、lookup()処理でorg.omg.CORBA.INITIALIZE例外が発生した場合、デジタル署名の設定および、JBKプラグインが使用するポリシーファイルが正しく設定されているか確認してください。詳細は、以下を参照してください。
- “J2EEユーザーズガイド”の“クライアントアプリケーションをJavaアプレットとして開発する場合”
- Standard EditionまたはEnterprise Edition使用の場合は“アプリケーション作成ガイド(CORBAサービス編)”、Plus使用の場合は“J2EEユーザーズガイド”の“デジタル署名”
- Apworksの“J Business Kit オンラインマニュアル”
分散トランザクション機能を利用しているときの例外
クライアントで以下の例外が発生した場合は、以下について確認してください。
- javax.transaction.SystemException:com.fujitsu.interstage.ots.jts.FjtsSystemException:org.omg.CORBA.NO_IMPLEMENT:CORBA_Request_get_response
- OTSシステムが起動していない可能性があります。OTSシステムが起動しているか、確認してください。
- org.omg.CORBA.INITIALIZE: JNDI lookup error.
- 分散トランザクション機能を利用する環境が正しく構築されているか確認してください。詳細は、Standard EditionまたはEnterprise Edition使用の場合は“アプリケーション作成ガイド(データベース連携サービス編)”の“クライアントアプリケーションソースの作成(UserTransactionインタフェースのJava言語)”、Plus使用の場合は“J2EEユーザーズガイド”の“JTAの使用方法”を参照してください。
その他の例外
- ロードバランス機能を利用し、クライアントアプリケーションで、“java.lang.ClassCastException”例外が発生した場合は、OD_or_admコマンド、またはodadministerlbコマンドで設定したインタフェ−スリポジトリIDが正しいか確認してください。
- 例外の詳細情報にCORBAサービスの例外情報とマイナーコードが出力された場合は、CORBAサービスでエラーが発生している可能性があります。
- 分散トランザクション機能を利用している場合は、データベース連携サービスで異常が発生している可能性があります。データベース連携サービスで発生した異常時の対処方法については、“データベース連携サービス使用時の異常”を参照してください。

- Interstageがインストールされているサーバマシン上でクライアントアプリケーションを動作させ、“*** panic : libthread loaded into green threads” が発生した場合は、環境変数(THREADS_FLAG)が正しく設定されているか確認してください。クライアントの環境設定についての詳細は、“J2EEユーザーズガイド”の“EJBサービスの環境設定”を参照してください。
その他
- クライアントアプリケーションからEJBアプリケーションのメソッドを呼び出したにもかかわらず、EJBアプリケーションからの応答がない場合は、以下の点を確認してください。
- クライアントアプリケーションとEJBアプリケーションで共通のクラスを使用するようなインタフェースとしている場合、同一のクラスファイルを使用しているか(ファイルの作成日付、サイズなどで確認してください)。
- “ERROR! Shared library ioser12 could not be found.”が発生した場合、“Interstage Java実行環境サーバパッケージ(Linuxの場合はJava実行環境)”または“Apworks クライアント運用パッケージ”がインストールされ、環境変数が正しく設定されていることを確認してください。
All Rights Reserved, Copyright(C) 富士通株式会社 2006