2012-01-01 8 views
1

に失敗しダブルクロージャーは、私がこのような何かを書くGSPファイルではGSP

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: C__STS_Projekte_TischtennisManager_grails_app_views_league__showGameSheet_gsp: 49:expecting '}', found ')' @ line 49, column 134. heets.find{it.matchnumber==1 })

私は「として問題は、二重閉鎖のようですバグ報告hereが見つかりました。

残念ながら、%=%のバグレポートからの解決策は、タグの冒頭と最後に問題がありません。

このダブルクロージャーの問題には、他の回避策や解決策がありますか?

Grails 1.3.7を使用しています。

答えて

3

これを2行に分割する必要があります。

は別個VAR最初

<% def r = tgs.singleGameSheets.find{it.matchnumber==1} %> 
${r*.awayPlayer.fullname()} 
+0

素晴らしいですが、それは動作しますが、 "r *"に*がないと、 "find"はリストではなく単一のオブジェクトを返します。どうもありがとう! – Rene

+0

クール - 申し訳ありませんが、私はfindAllをもっと頻繁に扱うことに慣れていて、*は私のデフォルトのキーストロークです:) – mgkimsal

0

私もビューまで可能なように調製されたコントローラとハンドデータにおけるデータ処理のこの種を行うには、まず、推薦するに検索結果を代入してみてください。

あなたがそれを行うことができない場合、私は、括弧を使用しようとお勧めします:

${tgs.singleGameSheets.find{it.matchnumber==1}.awayPlayer.fullname()} 

は私が${(someCollection.findAll { someClause })}

をしなければならなかった過去の機会に私のために働いてい

${(tgs.singleGameSheets.find{it.matchnumber==1}.awayPlayer.fullname())} 

なり

関連する問題