Bom dia irmãos do GUJ
estou iniciando a empreitada com JasperReports e iReport, e na minha aventura vi um negócio legal também que são as consultas onde criamos parâmetros.
Acontece que dá erro na linha onde instancio o PreparedStatement, creio que seja o cast que fiz, mas não tenho certeza pois é a primeira vez que mexo com isso.
Se alguém tiver alguma sugestão ou dica, pra resolver este NullPointerException.
[code]Conexao conn = new Conexao();
Connection con= (Connection) conn.conn;
try {
PreparedStatement consulta = (PreparedStatement) con.prepareStatement
(
“SELECT”+
“sessao.idSessao AS sessao_idSessao,”+
“pedido.numNota AS pedido_numNota,”+
“pedido.qnt AS pedido_qnt,”+
“cardapio.nome AS cardapio_nome,”+
“cardapio.valor AS cardapio_valor,”+
“sessao.idMesa AS sessao_idMesa,”+
“sessao.abertura AS sessao_abertura,”+
“sessao.fechamento AS sessao_fechamento,”+
“sessao.permanencia AS sessao_permanencia,”+
“sessao.idCliente AS sessao_idCliente,”+
“clientes.CPF AS clientes_CPF,”+
“sessao.totalConta AS sessao_totalConta,”+
“mensagemempresa.mensagem AS mensagemempresa_mensagem”+
“FROM”+
"conta conta INNER JOIN sessao sessao ON conta.numConta = sessao.numNota"+
“AND conta.idSessao = sessao.idSessao”+
“INNER JOIN pedido pedido ON conta.numConta = pedido.numNota”+
“INNER JOIN clientes clientes ON conta.idCliente = clientes.idCliente”+
“INNER JOIN mensagemempresa mensagemempresa ON conta.idMensagem = mensagemempresa.idMensagem”+
“AND clientes.idCliente = sessao.idCliente”+
“INNER JOIN cardapio cardapio ON pedido.codigo = cardapio.codigo”+
“WHERE”+
“sessao.idSessao = ?”+
“AND mensagemEmpresa.idMensagem = ?”
);
consulta.setInt(1, idSessao); //PEGA O PARAMETRO DA SUA APLICAÇÃO
consulta.setInt(2, idMensagem);
ResultSet rs = consulta.executeQuery();
/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
/* HashMap de parametros utilizados no relatório. Sempre instanciados */
HashMap parameters = new HashMap();
// HashMap<String, Integer> map = new HashMap<String, Integer>();
String arquivoJasper = “C://MonteCook//dist//lib//CupomFiscal.jasper”;
// map.put(“idSessao”, idSessao);
// String a = String.valueOf(cbIdMensagem.getSelectedItem());
// System.out.println(a);
// System.out.println(idSessao);
// map.put(“idMensagem”, Integer.valueOf(a));
// JasperPrint jasperPrint = JasperFillManager.fillReport(arquivoJasper, map, conn.conn);
JasperPrint jasperPrint = JasperFillManager.fillReport(arquivoJasper, parameters, jrRS);
//Vizualiza
JasperViewer.viewReport(jasperPrint,false);[/code]