Existem diversas formas, divididas em dois grupos: Sincronamente, e Assíncronamente.
Síncrono:
-Disparada por um evento ou ação, haverá a necessidade de recarregar novamente a página.
-Você pode por exemplo ter uma página contendo o campo, e um botão de busca.
-Ao pressionar o botão, o controller é chamado com os dados no params, realiza a busca, e renderiza ou redireciona para a página que você deseja mostrar os dados.
*Vantagem: Simplicidade de implementação
*Desvantagem: A usabilidade para o usuário não fica muito boa.
Assícrono:
-Disparada por evento ou ação sem a necessidade de renderizar toda a página novamente, preenche novamente um campo, ou qualquer outra marcação html.
-Você precisará de AJAX para isso. Pode ser usando os métodos remotos do grails(taglibs), fazendo o srcipt e a chamanda manualmente em javascript, ou usar o plugin jquery.
*Vantagem: Melhor usabilidade.
*Desvantagem: Se você está iniciando com grails, terá um pouco mais de dificultade em implementar.
O caminho é esse ai.
Boa sorte.
[]'s