我最为困惑。我有一个非常简单的查询。
def value = Contribution.executeQuery(
'select sum(c.balance) from Contribution c where
c.account.id=:accountId', [accountId: memberInstance?.account?.id])
我交互式地调试了 - 我可以 - 所需的实例都不是null(memberInstance,memberInstance.account)。但结果错误是ClassCastException?
Stacktrace follows:
java.lang.ClassCastException: com.myapp.contribution.ContributionService cannot be cast to com.myapp.contribution.ContributionService
at com.myapp.contribution.ContributionService$$FastClassByCGLIB$$d800d90.invoke(<generated>) ...
有没有人有关于为什么要生成CCE的任何线索,此外,为什么类型类型无法投射到自身(无论如何,不是我理解为什么grails应该这样做?)
谢谢!
阿里克斯
答案 0 :(得分:0)
好的 - 如果我将“def value”更改为“Double value”并将“[0]”追加到查询行的末尾(以获取返回的数组中的第一个值,这是缺少的部分之一) ,那就行了。
CCE非常误导......