加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Groovy / Grails使用map作为函数的参数

发布时间:2020-12-14 16:32:33 所属栏目:大数据 来源:网络整理
导读:我有一个非常简单的函数,我定义如下: def mySimpleFunction(Map myMap) { // Function logic here... } 但是,当我尝试编译它时,我收到一条警告消息并构建异常,该异常表示:[mySimpleFunction]动作接受类型为[java.util.Map]的参数,该参数未标记为Validateab
我有一个非常简单的函数,我定义如下:

def mySimpleFunction(Map myMap) {
   // Function logic here...
  }

但是,当我尝试编译它时,我收到一条警告消息并构建异常,该异常表示:[mySimpleFunction]动作接受类型为[java.util.Map]的参数,该参数未标记为Validateable.

如何将此功能标记为可验证?我导入了org.codehaus.groovy.grails.validation.Validateable

并将我的班级标记为@Validateable.

为了让我的应用程序构建,我应该做些什么?

先感谢您!

解决方法

如果它是辅助方法,请将其设为私有.在Grails 2.0中,公共控制器方法被假定为动作,并且假定参数是可绑定的.这意味着它们需要是数字类型,布尔值,字符串等,或命令对象类.

如果在控制器类文件中定义了命令对象类,则它们将自动成为可验证的,如果它们在别处定义,则需要注释为@Validateable.

因为这是一个辅助方法而不是一个动作,所以只需将其设为私有(特别是因为无论如何都无法从另一个类调用它):

private mySimpleFunction(Map myMap) {
   // Function logic here...
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读