Views no vraptor

3 respostas
galmeida

Alguém sabe me dizer se existe algum mecanismo (e não vale o redirect) para um controller escolher dinâmicamente qual o arquivo de view deve ser usado?

3 Respostas

Lucas_Cavalcanti

Se o que vai mudar é o formato da view, dá pra você usar o parâmetro _format na requisição ou o header Accepts:

_format = json => vai renderizar a view /WEB-INF/jsp/umController/umaLogica.json.jsp
_format = abc => vai renderizar a view /WEB-INF/jsp/umController/umaLogica.abc.jsp

se você precisa fazer alguma decisão de qual view vai ser renderizada, você pode usar o método:

result.use(Results.page()).forward(“caminho/da/minha/view”);

(result vem do construtor com o tipo br.com.caelum.vraptor.Result)

isso resolve? senão como é esse dinamicamente, tem como explicar melhor?

jonasabreu

@galmeida

você também pode usar

result.use(SuaView.class).seuMetodoQueRenderizaAView();

SuaView.class tem que implementar a interface View.

galmeida

@lucascs, @jonasabreu

Obrigado, o result.use() era exatamente o que eu procurava.

Criado 25 de agosto de 2009
Ultima resposta 25 de ago. de 2009
Respostas 3
Participantes 3