0

私のコード

def baseRecordList = DealerBaseInfo.findAll("from DealerBaseInfo as dealers",[cache: false])

内部で以下のエラーが発生していますPriorApprovalController.groovy

groovy.lang.MissingMethodException: No signature of method: DealerBaseInfo.findAll() is applicable for argument types: () values: []
Possible solutions: findAll(), findAll(), findAll(groovy.lang.Closure), findAll(java.lang.Object), findAll(java.lang.String), findAll(groovy.lang.Closure)
at DealerBaseInfo.findAll(DealerBaseInfo.groovy)
at DealerBaseInfo$findAll.call(Unknown Source)
PriorApprovalController.<init>(PriorApprovalController.groovy:37)
... 42 more
| Error Exception occurred trigger event [TestPhasesEnd]: Could not create a new instance of class [PriorApprovalController]!`

grails のバージョンは 2.1.1 で、コード カバレッジ プラグインは 1.2.5 です。

4

2 に答える 2

0

実際には、findAllメソッドのクラスレベルのアクセスが原因でエラーが発生していました。findAllのドメインに静的メソッドを記述し、コントローラーでそのメソッドにアクセスすると、機能しました。

于 2013-01-09T07:04:45.927 に答える
0

findAll() でサポートされている署名をご覧ください: http://grails.org/doc/2.1.0/ref/Domain%20Classes/findAll.html

queryParams を使用するには、次のようにする必要があると思います。

def baseRecordList = DealerBaseInfo.findAll("from DealerBaseInfo as dealers", [], [cache: false])
于 2013-01-03T14:13:38.547 に答える