Grails 如何解决';groovy.lang.MissingMethodException'。。。可能的解决方案:notify(),render(java.lang.String)

Grails 如何解决';groovy.lang.MissingMethodException'。。。可能的解决方案:notify(),render(java.lang.String),grails,groovy,Grails,Groovy,我对Groovy非常陌生,这是一个老应用程序,作者已经不在我们的组织中了。前面的问题看起来都很相似,但都没有提供任何帮助。应用程序需要向用户发送一条简单的消息,警告他们缺少条目,然后才能继续 我从flash.message中进行了不少于20次更改以确认。Flash使应用程序一直跳转到用户登录功能。此确认发出崩溃消息:错误500:执行控制器[SdrmController]的操作[submitrequest]导致异常:执行操作时出现运行时错误 def submitrequest = { de

我对Groovy非常陌生,这是一个老应用程序,作者已经不在我们的组织中了。前面的问题看起来都很相似,但都没有提供任何帮助。应用程序需要向用户发送一条简单的消息,警告他们缺少条目,然后才能继续

我从flash.message中进行了不少于20次更改以确认。Flash使应用程序一直跳转到用户登录功能。此确认发出崩溃消息:
错误500:执行控制器[SdrmController]的操作[submitrequest]导致异常:执行操作时出现运行时错误

def submitrequest = {
    def testChecker
    testChecker = [params.fullExpName].flatten().findAll { it != null }
    log.info('testChecker.size = ' + testChecker.size)
    if (testChecker.size > 0) {
        if (!confirm('Submitting can not be undone, are you sure?')) return
    } else { 
        if (!confirm('You have to pick an expedition.  Please return to your Request and pick at least one expedition.')) return
        } else {
            return
        }
    }
    // rest of long time working code here
}
预期结果是一条简单的消息,告诉用户从列表中选择一个“探险”,然后代码返回到同一点,这样用户可以进行更改,然后再次点击提交。 然后是完整信息:

没有方法签名:SdrmController.confirm()适用于参数类型:(java.lang.String)值:[您必须选择一个考察。请返回到您的请求并选择至少一个考察。]可能的解决方案:notify(),render(java.lang.String)

--flash.message对我们的情况起了作用

`legChecker = [params.programLeg].flatten().findAll{it!=null}
    if(requestInstance.futurePast == "future" && expChecker.size<1) {
        flash.message = " you must select a future expedition   "
        render(view: 'stepstart', model: [....])
        return
    }`
`legChecker=[params.programleag].flatte().findAll{it!=null}

if(requestInstance.futurePast==“future”&&expChecker.sizeere没有这样的方法
confirm
。我想你是在混用JavaScript。你不能从控制器(groovy)调用JavaScript函数。根据错误,您在Grails中-对吗?我看到问题的显示没有正确显示所有内容。第一个确认行可以100%工作。这是else下的确认。这是groovy代码。只需澄清一下:您在使用Grails吗?如果是,您不能直接显示groovy的消息。关于您的注释它可以工作-您的错误是绝对正确的-在您的控制器类中没有方法
confirm
。是的,我使用的是grails。(很抱歉,我是Groovy的新开发人员,是最后一个在左边工作的开发人员)。有一些grails插件,如Jquery 1.7等。Java环境是Java&是的,这不是一个明智的决定,我的部分任务是在解决这一问题后尝试将其设置为8。正如我所说的,第一个“确认”语句起作用。它显示了一条消息“提交无法撤消,你确定吗?”以及“确定”或“取消”选择框。我只需要在屏幕上显示一条消息,告诉用户“嘿,停止,回去,选择一个探险队”。几十次尝试都失败了。可能第一个confirm()方法也不起作用,但消息“提交无法撤消”是由不同的代码(可能是javascript)生成的。