GStringImpl无法强制转换为java.lang.String

时间:2015-03-16 14:39:07

标签: grails

我使用Grails和Spring Security得到了以下错误。还有其他人有这样的问题吗?如果是这样,你的修复是什么?

Error |
Exception in thread "Thread-15" 
Error |
java.lang.ClassCastException: org.codehaus.groovy.runtime.GStringImpl cannot be cast to java.lang.String
Error |
    at org.codehaus.groovy.grails.project.compiler.GrailsProjectWatcher.run(GrailsProjectWatcher.java:114)

并且

java.lang.IllegalArgumentException: Failed to evaluate expression 'User_name'

1 个答案:

答案 0 :(得分:33)

您是否生成了所有类(用户,角色......)。 你的命令怎么样? 像这样grails s2-quickstart com.testapp User Role? 检查您的配置并在本教程中进行尝试。 Spring Security Plugin Tutorials

实际上这个错误意味着在groovy中你使用类似“$ {my_var}”的GString,而某些类需要String。它不能自动投射。如果您有这样的代码,则必须将其转换为String,如下所示:"${my_var}".toString()