2013-05-28 32 views
0

我在我的ProjectController中創建一個項目,它應該在創建後保存。而是它給了我以下異常:在控制器中保存(),Grails

Class java.lang.ClassCastException 
Message com.everyonecounts.padre.ProjectController$_closure1 cannot be cast to javax.servlet.ServletRequest 

這裏是我的拯救方法的代碼:

def save() { 
    log.debug(params) 
    def projectInstance = new Project(params) 
    if (!projectInstance.save(flush: false)) { 
     log.debug("save failed") 
     render(view: "create", model: [projectInstance: projectInstance]) 
     return 
    } 


} 

堆棧跟蹤告訴我,在渲染管線發生錯誤。

+0

你可以顯示'Project'域類和'create.gsp'嗎? – dmahapatro

回答

1

經過仔細觀察,我發現您實際上正在檢查save中的錯誤,而不是成功保存。你需要檢查一個不成功的保存或成功?

def save() { 
    log.debug(params) 
    def projectInstance = new Project(params) 
    //If save was successful then the if block will not be executed. 
    if (!projectInstance.save(flush: false)) {//Returns true on successful save. 
     log.debug("save failed") 
     render(view: "create", model: [projectInstance: projectInstance]) 
     return 
    } 

    //There is nothing to render here in case the save was successful. 
    //you would need something like below on save success 
    //render(view: "create", model: [projectInstance: projectInstance]) 

}