0

我正在使用 Grails 开发应用程序。

我一直面临一个问题,每当我对域类进行一些更改时,应用程序都会自动重新运行,当我尝试刷新页面时,我会收到拒绝访问页面并且日志显示user Id is null
这是日志

使用 org.springframework.deerwalk.impl.CustomCasAuthenticationProvider 进行身份验证尝试

groovy.lang.MissingMethodException: No signature of method: static com.usermanant.User.get() is applicable for argument types: (java.lang.Long) values: [1]
Possible solutions: getId(), wait(long), setId(java.lang.Long), getAt(java.lang.String), grep(java.lang.Object), wait()
 User:null

请帮我。

4

2 回答 2

2

如果您使用内存数据库,那么只要您对域模型进行更改,您现有的项目就会被删除。

如果您愿意,可以将您的最小数据集插入 bootstrap.groovy。

使用 MySQL 等真实数据库进行热替换通常还需要重新启动您的应用程序。

于 2013-02-21T08:50:33.623 回答
0

在您的 Config.grooy(在配置下)中,您有以下几行:

grails.plugins.springsecurity.userLookup.userDomainClassName = 'com....User'
grails.plugins.springsecurity.userLookup.authorityJoinClassName = 'com....UserRole'
grails.plugins.springsecurity.authority.className = 'com....Role'

你应该在这里有正确的类名。

在你的情况下:

grails.plugins.springsecurity.userLookup.userDomainClassName ='com.usermanant.User'
于 2013-03-27T08:50:32.877 回答