public String executarExcel(HttpServletResponse response) {
JasperPrint impressao;
try {
con = this.getConexao();
impressao = JasperFillManager.fillReport(relatorio, hash, con);
byte bytes[] = new byte[10];
JRXlsExporter exporter = new JRXlsExporter();
ByteArrayOutputStream xlsReport = new ByteArrayOutputStream();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, impressao);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, xlsReport);
exporter.setParameter(JRExporterParameter.OUTPUT_FILE, url
+ "\\relatorios\\");
exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME,
nomeArquivo + ".xls");
exporter.exportReport();
System.out.println("Sixe of byte array:" + xlsReport.size());
bytes = xlsReport.toByteArray();
response.setContentType("application/vnd.ms-excel");
response.setContentLength(bytes.length);
xlsReport.close();
OutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
} catch (Exception e) {
e.printStackTrace();
}
return "/" + this.nomeArquivo;
}
Manter formato relatorio ao exportar excel
D
Ola pessoal,tenho um relatorio no jasper que,ao ser exportado pra excel ou hmtl perde toda a formatação,alguem sabe o que pode estar acontecendo?Tenho o seguinte método para abrir o relatorio como excel:
2 Respostas
M
Cara… já tive o mesmo problema…por exemplo quando usar um quadrado e ele estiver sobreposto ao outro o quadrado inteiro desaparece quando exportado para Excel…
tem que ter muita paciência… cheque se isso não está ocorrendo, começe colocando os componentes e testando um a um (vai imprimindo e vai vendo a partir de qual começa a ferrar o layout)…
Até hoje não achei outro jeito.
D
Obrigado pela resposta,já havia imaginado isto,porém não queria fazer sem uma resposta,pelo visto e o jeito…
Criado 13 de fevereiro de 2009
Ultima resposta 13 de fev. de 2009
Respostas 2
Participantes 2