私は、次のSpring Frameworkのエラーメッセージを取得しています:SpringFramework UnexpectedRollbackExceptionが表示されるのはなぜですか?
Invocation of getLogoForGlobalConext() in class $Proxy44 threw exception
org.springframework.transaction.UnexpectedRollbackException:
Transaction rolled back because it has been marked as rollback-only
at template/includes/macros.vm line 1651, column 43
私はmacros.vm
を開き、ライン1651を見上げると、それは次のようになります。
#set ($globalLogo = $spaceManager.getLogoForGlobalContext());
私の研究から$Proxy44
が実際にあるように見えます$spaceManager
変数(またはDefaultSpaceManager.java
のインスタンス)。
このメッセージは、WebアプリケーションがWebサーバー/データベースのどこかに座っている画像/添付ファイルをダウンロードしようとするとランダムに表示されます。
attachmentmanagerはSpringのトランザクション管理によって管理され、画像/添付ファイルがダウンロードされる場合は、次のトランザクション属性が使用されます。
1)伝播を - 添付ファイルマネージャのすべてのメソッドのために
2)伝播し、読み取り専用 - 「get」で始まる添付ファイルマネージャのすべてのメソッド。
属性がここで定義されています:http://static.springsource.org/spring/docs/2.0.x/reference/transaction.html
私は考えています何が私が(のような無限大に設定します)取引にタイムアウトを設定する必要があります。
あなたのアドバイスはありがとうございます。あなたの答えが何らかの形で役立つなら、私はポイントを報酬を与えます!