java - Grails 项目中的 ClassCastException

标签 java rest grails groovy

我在 grails 项目中遇到了一些关于 ClassCastException 的问题。 我不明白这有什么问题。

2015-10-16 14:07:19 | http-bio-8096-exec-10 | ERROR | org.codehaus.groovy.grails.web.errors.GrailsExceptionResolver | ClassCastException occurred when processing request: [POST] /gci/m-t
fr.xxx.use.gci.consumer.rest.MTService cannot be cast to fr.xxx.use.gci.consumer.rest.MTService. Stacktrace follows:
java.lang.ClassCastException: fr.xxx.use.gci.consumer.rest.MTService cannot be cast to fr.xxx.use.gci.consumer.rest.MTService
    at fr.xxx.use.gci.MTController$$EPRHJ9I6.save(MTController.groovy:26)
    at grails.plugin.cache.web.filter.PageFragmentCachingFilter.doFilter(PageFragmentCachingFilter.java:195)
    at grails.plugin.cache.web.filter.AbstractFilter.doFilter(AbstractFilter.java:63)
    at fr.xxx.xxxxx.authentication.AnnuaireCredentialCheckerFilter.doFilter(AnnuaireCredentialCheckerFilter.groovy:84)
    at fr.xxx.xxxxx.security.mock.MockAuthenticationFilter.doFilter(MockAuthenticationFilter.groovy:60)
    at com.granicus.grails.plugins.cookiesession.CookieSessionFilter.doFilterInternal(CookieSessionFilter.java:78)
    at fr.xxx.use.navigation.NexturlValidationFilter.doFilter(NexturlValidationFilter.groovy:52)
    at fr.xxx.use.requestid.RequestIdFilter.doFilter(RequestIdFilter.groovy:38)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)

所以,这是我的 Controller

class MTController {

def mTService

def index() {
    render view:'index'
}

def save(){
    def flux = request.JSON

    if (!flux.numCT || !flux.numST) {
        render status: HttpServletResponse.SC_BAD_REQUEST
        return
        }

    def bddId = mTService.saveInfos(flux.numCT, flux.numST)
    if (bddId == null) {
        render status: HttpServletResponse.SC_BAD_REQUEST
        return
    }
}

这就是我的服务

class MTService {

def saveInfos(numCT, numST) {
    def mTOTD = new InitMT()

    mTOTD.numCT = numCT
    mTOTD.numST = numST
    return mTOTD.save()
}

}

最佳答案

很可能 grails clean 可以解决该问题。该错误非常奇怪,我怀疑正在运行的代码不是您认为正在运行的代码。

关于java - Grails 项目中的 ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33170940/

相关文章:

Spring企业应用最佳实践

java - eclipse : Unable to load jar's into the Tomcat WEB-INF/Lib folder ?

java - Spring Batch - 如何使用从 REST API 请求收到的文件名启 Action 业

java - 计算 Java 中两个日期或日历对象之间的天数

java - 按所有对象包含的字符串值对 Set 中的对象进行排序

javascript mocha,节点异常测试用例

rest - 在 Grails 中使用 @Resource 时打印 REST 调用接收到的数据

Grails 插件依赖项

grails - grails从 Controller 返回xml字符串

java - 加载主类 list 属性失败