Pergunta

Isso funciona como esperado em um GSP-página:

<td>${Foo.findAllByBar(bar)}</td>

Mas quando a adição de uma declaração a cobrar as quebras de código ..

<td>${Foo.findAllByBar(bar).collect { it.name }}</td>

com

Error 500: Could not parse script [...gsp]: startup failed,
     ...: 129: expecting '}', found ')'
     @ line 129, column 196. 1 error`.

Eu estava sob a impressão de que qualquer código Groovy válido poderia ser colocado em um ${ ... } gstring e sendo avaliada corretamente / expandida. O que eu estou ausente?

Foi útil?

Solução

O analisador GSP não gosta } dentro do bloco ${...}. Tente esta:

<%= Foo.findAllByBar(bar).collect { it.name } %>

Outras dicas

Como alternativa, você pode usar o operador de propagação :

<td>${Foo.findAllByBar(bar)*.name}</td>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top