Continuando na saga do desbravamento do VRaptor :lol:
Mais uma dúvida de um iniciante chato.. :wink:
É o seguinte pessoal, fiz os métodos de listagem dos itens da minha tabela e criei o Jsp lista usando DisplayTag.
Quando executo a página lista.jsp aparece a página mas com um erro do displayTag -> Nothing found to display.
Eu já verifiquei quase tudo e conclui que a página lista.jsp não está recebendo a variável do controller.
Gostaria de saber como receber a variável produtos que é o resultado da minha listagem e transportar essa variável para meu jsp e listá-la.
Segue meu controller:
package br.com.jcomputacao.vraptor.controller;
import br.com.caelum.vraptor.Resource;
import br.com.jcomputacao.vraptor.dao.DaoFactory;
import br.com.jcomputacao.vraptor.model.Produto;
import java.sql.SQLException;
import java.util.List;
@Resource
public class ProdutosController {
private final DaoFactory daofactory;
private List <Produto> produtos ;
public ProdutosController(DaoFactory daofactory) {
this.daofactory = daofactory ;
}
public void form () {
}
public void adiciona(Produto produto) throws SQLException {
this.daofactory.beginTransaction();
this.daofactory.getProdutoDao().adiciona(produto);
this.daofactory.commit();
}
public List<Produto> getProdutos() {
return produtos;
}
public void lista() {
produtos = this.daofactory.getProdutoDao().listaTudo();
}
}
Meu lista.jsp:
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Listando Produtos...</title>
</head>
<body>
<h1>Produtos</h1>
<c:out name="${produtos.lenght}" />
xxx
<display:table id="produtos" name="${produtos}" requestURI="lista">
<display:column property="id" sortable="true"/>
<display:column property="nome" />
</display:table>
</body>
</html>
… pois bem…