salve galera
seguinte, eu tenho um relatorio onde mando alguns campos, ja consigo fazer isso blzinha usando parameters, porem agora quero pegar os dados de uma jtable que tem varias linhas e ir mandando para o relatorio.
to tentando assim.
try {
String arquivo = "relatorios/Comanda.jasper";
java.io.InputStream file = getClass().getClassLoader().getResourceAsStream(arquivo);
Map parametros = new HashMap();
for(int x = 0; x < tabelaConsumo.getRowCount(); x++){
parametros.put("produto", tabelaConsumo.getModel().getValueAt(x, 1));
}
JasperPrint printer = JasperFillManager.fillReport(file, parametros, new JREmptyDataSource());
JRViewer view = new JRViewer(printer);
JDialog dialog = new JDialog();
dialog.getContentPane().add(view);
new AbreRelatorios().abreRelatorio(dialog);
} catch (JRException ex) {
Logger.getLogger(FechamentoDeConta.class.getName()).log(Level.SEVERE, null, ex);
}
dessa maneira q estou fazendo ai, ele passa pelo for e pega apenas o ultimo valor, como eu faço para mandar todos os valores do for ??? Pensei em fazer assim.
for(int x = 0; x < tabelaConsumo.getRowCount(); x++){
parametros.put("produto", tabelaConsumo.getModel().getValueAt(x, 1));
JasperPrint printer = JasperFillManager.fillReport(file, parametros, new JREmptyDataSource());
}
JRViewer view = new JRViewer(printer);
porem dessa maneira eu perco a referencia a variavel printer que instancia JasperPrint, como eu faço para naum perder essa referencia ???
Alguma dica de como fazer isso ??? qual seria a melhor maneira ?

