0

groovy 的新手并坚持了很长一段时间。

这是有问题的方法。

protected User currentUser() {
        def user = springSecurityService.currentUser
        println "In currentUser Method"
        println "Is userId null?"
        println user.id == null
        println user.id instanceof Long

User.get(user.id)
}

而User.get是GORM包中的一个方法

D get(Serializable id) {
        execute({ Session session ->
           session.retrieve(persistentClass, id)
        } as SessionCallback)
    }

我收到错误

No signature of method: User.get() is applicable for argument types: () values: []

我不明白的是,通过 println 语句我验证了

  1. user.id 不为空
  2. user.id 是 instanceof Long ,它实现了 Serializable 接口。

知道这里发生了什么吗?

谢谢你。

4

1 回答 1

0

一个可能的解决方案可能是您的import声明无效。User是一个非常常见的类名,因此您(或您的 IDE)可能导入了一个与User您预期不同的类。导入的类可能没有get(id)方法。

于 2013-06-28T17:55:18.427 回答