Como utilizar um serviço dentro da página gsp (Grails 4.0.4)
19/10/2020 12:41
0
Prezados,

Preciso usar um serviço grails dentro de minha página gsp.

O serviço é UsuarioService e o método é list.

Exemplo:

?<div class="controls">
<g:select id="usuario" name="usuario.id" from="${UsuarioService.list()}" optionKey="id" value="${params.usuario?.id}" class="many-to-one single-select col-xs-5" noSelection="['null': '']"/>

</div> <!-- controls -->


Entretanto no momento de rederização da página, ocorre a exceção GroovyCastException:

Cannot cast object 'class sysAcs.UsuarioService' with class 'java.lang.Class' to class 'sysAcs.UsuarioService'
Tags: Grails, Grails 4.0.4, gsp, service, GroovyCastException, Cannot cast object , with class 'java.lang.Class'


1
Ola Pedro, porque nao passar a lista de usuarios como params inves de chamar o servico no template?
21/10/2020 06:01


0
Obrigado pela dica Pedro Henrique!
22/10/2020 12:09


1
Pedro,
uma opção que não recomendo é incluir no model que vai renderizar a página a instância do serviço.

Mas evite ao máximo este tipo de coisa, por que pensando na longevidade do seu sistema, é importante que tudo quanto for lógica de negócio fique centralizado. Com isto, futuramente, você pode transformar de uma forma relativamente fácil seu sistema em uma API REST (o scaffolding do Grails já te dá isto) consumida por diferentes clientes.



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto