ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Express メッセージ集
FUJITSU Software

66.14.28 EJB1229

EJB: WARNING: EJB1229: STATUS_ROLLEDBACK returned from commit method of UserTransaction: NAME=%s1
EJB: 警告
: EJB1229: UserTransactionのcommitメソッドがSTATUS_ROLLEDBACKを返却しました: NAME=%s1

可変情報

%s1:EJBアプリケーション名

意味

UserTransactionのcommitメソッドでエラーが発生し、トランザクションをロールバックしました。

システムの処理

トランザクションをロールバックして、クライアントアプリケーションにHeuristicRollbackExceptionをthrowします。

ユーザの対処

以下に考えられる原因とその対処を説明します。

  • commitメソッドで実行される以下のメソッドでエラーが発生しました。

    • Entity BeanのejbStoreメソッド

    • Entity BeanのejbPassivateメソッド

    • Entity Bean(CMP)使用時のEJBコンテナが実行するDBMSへのUPDATE処理

    • Session BeanのbeforeCompletion

    [対処]
    以下の手順で例外が発生した原因を調査し、原因を取り除いた後にアプリケーションを再度実行してください。

    1. 以下のログファイルを参照して発生したExceptionを確認してください。


      C:\Interstage\EJB\var\FJEJBconsole


      /opt/FJSVejb/var/FJEJBconsole

    2. スタックトレースを確認して例外の発生原因を調査してください。スタックトレースの解析方法については、“J2EE ユーザーズガイド(旧版互換)”の“スレッドダンプが出力された場合の対処”を参照してください。よく発生する例外の原因については“第105章 J2EE使用時に出力される例外情報”を参照してください。

    また、上記で解決できない場合には、当該メッセージの情報などを技術員に連絡してください。

  • トランザクション中にEJBアプリケーションでシステム例外が発生したため、EJBコンテナがトランザクションの状態をSTATUS_MARKED_ROLLBACKとしています。このためcommitメソッド実行時にトランザクションをロールバックしました。

    [対処]
    本エラーが発生する前にEJB1096が発生しています。EJB1096が発生した原因を調査して対処した後に、再度運用してください。

  • アプリケーション内でUserTransactionのsetRollbackOnlyメソッドを実行しています。このためcommitメソッド実行時にトランザクションをロールバックしました。

    [対処]
    setRollbackOnlyメソッドを実行した原因を確認してください。setRollbackOnlyメソッドを実行した原因を調査して対処した後に、再度運用してください。