E aee galera blz??
Pessoal eu to tendo que criar relatorios com ireport aqui e to bem perdido…Tipo no ireport eu crio o jasper normal. O problema ta na hora de jogar isso rodando na web. Abrir o formulario em pdf na web.
Eu comecei fazer um codigo aqui atraves de pesquisas e estududos mas ta dificil. Ve se alguem pode me ajudar pra ver se os metodos que fiz estao ok, se necessita de td isso ou algo a mais…E um como faco pra colocar a pesquisa no metodo buscarDadosParaMostrarNoRelatorio. Como fazer a busca.
Estou colocando o codigo aqui, espero que alguem possa me dar uma luz.
Obrigado desde ja…
package principia.atendimento.action.relatorio;
import java.beans.Statement;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.sql.ResultSet;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.JasperRunManager;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.util.JRLoader;
import com.sun.corba.ee.internal.iiop.Connection;
public class FiltraRelatorio {
public static void enviarArquivoPdf(HttpServletResponse response, Map parametros, JRDataSource dataSource) throws Exception {
// carrega o jasper
JasperReport jasperReport = (JasperReport) JRLoader.loadObject("c:/arquivos/teste.jasper");
// Parametros do relatorio
parametros = new HashMap();
parametros.put("paramAno", new Integer(2007));
// dados da consulta (seriam os fields do relatorio)
List list = buscarDadosParaMostrarNoRelatorio();
dataSource = new JRBeanCollectionDataSource(list);
// ------------------
byte[] pdfEmFormatoBytes = JasperRunManager.runReportToPdf(jasperReport, parametros, dataSource);
// ------------------
response.setContentType("application/pdf");
response.setContentLength(pdfEmFormatoBytes.length);
// ------------------
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(pdfEmFormatoBytes);
ouputStream.flush();
ouputStream.close();
}
public static Connection getConnection() throws ClassNotFoundException, SQLException {
String driver = "org.postgresql.Driver";
String url = "dbc:postgresql://localhost:5432/sodc";
String user = "postgres";
String password = "root";
Class.forName(driver);
Connection con = (Connection) DriverManager.getConnection(url, user, password);
return con;
}
private static List buscarDadosParaMostrarNoRelatorio() throws JRException, Exception {
// faz uma busca no banco
return null;
}
public static void main(String[] args) throws JRException, Exception {
new FiltraRelatorio().enviarArquivoPdf(null, null, null);
}
}