Interstage Application Server J2EE ユーザーズガイド
目次 索引 前ページ次ページ

第3部 EJB編> 第12章 Entity Beanの実装

12.10 インスタンス管理モードでの注意事項

 Entity Beanの実行環境では、ユーザの用途に合わせて、インスタンス管理のモードが選択できます。選択するインスタンス管理モーによっては、以下に注意してください。

 インスタンス管理モードの詳細については、“Entity Beanのインスタンス管理”を参照してください。

注意事項

該当インスタンス管理モード

対処方法

Entity Beanを呼び出すアプリケーションからcreateおよびremoveメソッドを発行するとエラーとなります。また、永続化フィールドの値を更新してもデータベースには反映されません。

ReadOnly

更新処理を行う場合は、ReadOnly以外のモードを指定してください。

deployment descriptorのreentrant属性に“動作不可能(false)”を設定し、EJBアプリケーションのメソッドがreentrant呼出しを行った場合、正常に動作します。

ReadOnly

Reentrant呼出し不可能にしたい場合はReadOnly以外のインスタンス管理モードを指定してください。

分散トランザクション機能を使用し、かつOracleのデータベースを使用する場合、複数インスタンス検索(Enumeration型またはCollection型)を実行すると、Oracleのデータベースから “ORA-01002: フェッチ順序が無効です”という例外が返却される場合があります。

Sequential

更新処理を行う場合はReadWriteを、検索処理だけ行う場合はReadOnlyを指定してください。

トランザクション属性にMandatory以外を指定して、複数インスタンス検索(Enumeration型またはCollection型)を実行すると、例外が発生する場合があります。

Sequential

EJBアプリケーション(Bean単位)にトランザクション属性Mandatoryを指定して実行してください。

以下のEJBアプリケーションはインスタンス管理モードにSequentialが設定できません。

  • IJServerに配備されている、およびInterstage管理コンソールで、“ローカル呼出し”を“しない”に設定しているEntity Bean
  • IJServerに配備されていて、かつ、カストマイズで“ローカル呼出し”に“しない”が設定されているEntity Bean

Sequential

インスタンス管理モードにSequentialを指定してEntity Beanを動作させたい場合は“ローカル呼出し”を“する”に設定してください。

“ローカル呼出し”に“しない”を設定して運用する場合は、以下のようにインスタンス管理モードを変更してください。

  • 更新処理を行う場合は、ReadWrite指定する。
  • 検索処理だけを行う場合は、ReadOnlyを指定する。

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

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