Grails控制器错误

时间:2011-05-26 12:33:05

标签: grails controller

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]
}

嘿,我有这个问题。如果我回来:“[会议:会议]”我的gsp成功地做了我想要的。 Altought,当我返回'[结果:结果]'这是一个过滤的会议地图时,显示下面的错误,我无法弄清楚原因:

Exception Message: No such property: yearCount for class: java.util.LinkedHashMap$Entry 

PS。基本上,我有

String [] conf_origin ---&gt;这是一个字符串数组

String [] conf_search ---&gt;这是搜索栏中引入的单词的字符串数组。

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

1 个答案:

答案 0 :(得分:3)

conferencesListConference,但在Groovy中无类型),resultsMap。你需要:

  • 使其成为List
  • Conference
  • 或返回[conferences: results.values()]
  • 或调整您的GSP页面以迭代Map

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