0

私はgrails 1.3.7を使用しており、次のコードがあります:

Grails サービス:

class MyClass {
   static transactional = true

  @Transactional(noRollbackFor = MyException.class)
  public MyObject myMethod(Map map1, Boolean bl1 = false) throws MyException {
   //codes
     if(...){
        throw new MyException("msg")
     }
}

私の例外:

class MyException extends Exception{

 def errors = []

MyException(errors){
    super(errors.toString())
    this.errors = errors
}

}

コードがMyException をスローすると、次のエラーが発生します。

Ps。static transactional = true に変更すると、エラーは発生しません。

何か案が?

4

2 に答える 2

0

注釈を使用する場合は、設定する必要があります

static transactional=false

つまり、grails のトランザクション プロキシを無効にして、Spring AOP のプロキシと重複しないようにします。

于 2013-03-28T14:26:59.273 に答える