Bom estou começando em desenvolvimento com VRaptor e estou com uma dúvida.
No meu controller tenho um método load(Long id) que vai carregar a entidade e redirecionar para o formulário.
@Get
@Path("/expenseType/{id}")
public ExpenseTypeVO load(Long id) {
ExpenseTypeVO expenseType = this.expenseTypeBO.findById(id);
return expenseType;
}
Eu tenho outro método form() que redireciona as solicitações para o formulário.
@Get
@Path("/expenseType/new")
public void form() {
}
O método form() redireciona usando a conversão do VRaptor.
Eu gostaria que o método load(Long id) carregasse a entidade e depois chamasse o form() passando a entidade na requisição para que fosse exibida no formulário JSP.
Como eu poderia fazer isso?
Abraços
você pode fazer:
@Get
@Path("/expenseType/{id}")
public ExpenseTypeVO load(Long id) {
ExpenseTypeVO expenseType = this.expenseTypeBO.findById(id);
result.include("expenseType", expenseType);
result.of(this).form();
}
[quote=Lucas Cavalcanti]você pode fazer:
[code]
@Get
@Path("/expenseType/{id}")
public ExpenseTypeVO load(Long id) {
ExpenseTypeVO expenseType = this.expenseTypeBO.findById(id);
result.include("expenseType", expenseType);
result.of(this).form();
}
[/code][/quote]
Mas ai não compila porque o método retorna um ExpenseTypeVO.
Se eu colocar um return ali ele funciona?
Bom eu fiz assim e funcionou.
@Get
@Path("/expenseType/{id}")
public ExpenseTypeVO load(Long id) {
ExpenseTypeVO expenseType = this.expenseTypeBO.findById(id);
this.result.include("expenseType", expenseType);
this.result.of(this).form();
return expenseType;
}
Valeu a ajuda.
Abraços
pode deixar o retorno como void mesmo…