pessoal, to com um problema ao pegar o relatorio gerado pelo ireport.
esse é meu main:
public class TestaRelatorio {
public static JasperPrint loadReport(String arquivo) throws JRException {
InputStream is = TestaRelatorio.class
.getResourceAsStream("/relatorios/" + "DANFE" + ".jrxml");
JasperReport report = JasperCompileManager.compileReport(is);
Session s = HibernateUtil.getSession();
Connection con = s.connection();
JasperPrint print = JasperFillManager.fillReport(report, new HashMap(),
con);
s.close();
return print;
}
public static void main(String[] args) throws JRException {
JasperExportManager.exportReportToPdfFile(TestaRelatorio
.loadReport("DANFE"), "DANFE.pdf");
}
}
não da erro nenhum, o problema é que quando abro o pdf gerado, está em branco.
alguem pode me ajudar?
valew desde já.
Estou com o mesmo problema!
Conseguiu resolver? :?:
vc não ta mandando nada para o relatório.
quer q ele descubra na bolinha mágica oque quer q apareça? LOL
mandar sómente a conn nao resolve…
mande o query ou collection ou seja la oque for que tenha os dados do relatorio…
[code]import controller.ControllerInterface;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import model.dao.ConnectionManager;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
public class ImprimirSolicitacao implements ControllerInterface {
public String gerarPDF(HttpServletRequest request, HttpServletResponse response) {
Connection con = ConnectionManager.getConexao();
Connection con2 = ConnectionManager.getConexaoAdm();
PrintWriter out = null;
String caminho = "Financeiro/Solicitacao/PDF/";
String query = "SELECT c.CodSolicitacao,c.Ano,CONVERT(CHAR, c.Data, 103) AS Data,"
+ "FROM SolicitacaoCompra c ";
HashMap parametros = new HashMap();
parametros.put("SQL", query);
parametros.put("conexao", con2);
parametros.put("SUBREPORT_DIR", caminho);
try {
out = response.getWriter();
JasperReport jasperReport = JasperManager.loadReport(request.getServletContext().getRealPath(caminho + "SolicitacaoCompra.jasper"));
JasperPrint jasperPrint = JasperManager.fillReport(jasperReport, parametros, con);
JasperExportManager.exportReportToPdfFile(jasperPrint, request.getServletContext().getRealPath(caminho + "SolicitacaoCompra.pdf"));
out.println(request.getServletContext().getRealPath(caminho + "SolicitacaoCompra.jasper"));
} catch (IOException ex) {
Logger.getLogger(ImprimirSolicitacao.class.getName()).log(Level.SEVERE, null, ex);
} catch (JRException ex) {
Logger.getLogger(ImprimirSolicitacao.class.getName()).log(Level.SEVERE, null, ex);
} finally {
out.close();
}
return caminho + "SolicitacaoCompra.pdf";
}
public String call(HttpServletRequest request, HttpServletResponse response) {
return gerarPDF(request, response);
}
}[/code]
comenta isso:
out = response.getWriter();