def results = {

    def results = [:]
    def conferences = Conference.list() // lista das conferencias

    String [] conf_origin // array de strings da indexação da classe
    String [] conf_search  = params.conferenceName.split() // array de strings palavras da pesquisa
    boolean test // teste double for

          conferences.each{

                conf_origin = "hi i'm john".split() // indexação
                //conf_origin = "aveiroa".split()
                OUTER: for(int i = 0; i< conf_origin.length; i++){
                            for(int j = 0; j< conf_search.length; j++) {

                                    if(conf_origin[i] == conf_search[j]){
                                        test = true
                                        results.put(it.id, it)
                                        break OUTER;
                                    }
                                }
                            }

                        }

    return [results : results]
}

嘿,我有这个问题。如果我返回:“[conferences: session ]”,我的gsp将成功执行我想要的操作。备选,当我返回“[results:results]”(这是一张经过过滤的 session map )时,将显示以下错误,并且我无法弄清原因:
Exception Message: No such property: yearCount for class: java.util.LinkedHashMap$Entry

PS。基本上,我有

String [] conf_origin --->这是一个由单词组成的String数组

字符串[] conf_search --->,它是搜索栏中引入的单词的字符串数组。

然后我比较两个数组,如果有一个匹配项,则打破for并将该 session 对象添加到结果中。

最佳答案

conferencesList(属于Conference,但在Groovy中未键入),而resultsMap。您需要:

  • 使其成为ListConference
  • 或返回[conferences: results.values()]
  • 或调整您的GSP页面以遍历Map

  • 请注意,conferences是GSP代码所依赖的变量名。

    07-24 09:38
    查看更多