boa tarde , estou fazendo a parte de exportaçao de relatorio do meu sistema e estou testando a exportaçao xls.
tenhu o seguinte codigo
[code]public StreamedContent gerarExcel(List listRelatorioVisitaQuestao) throws Exception {
StreamedContent arquivoXLS = null;
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet("Lista Usuarios");
for (int cont = 0; cont < listRelatorioVisitaQuestao.size(); cont++) {
// usuarioDTO = (UsuarioDTO) listaUsuarios.get(cont);
RelatorioPergunta relatorioPergunta = listRelatorioVisitaQuestao.get(cont);
HSSFRow row = sheet.createRow(cont);
HSSFCell celula0 = row.createCell((short) (0));
sheet.autoSizeColumn((short) 0);
celula0.setCellValue(relatorioPergunta.getVisitaQuestao().getId_visita_questao());
HSSFCell celula1 = row.createCell((short) (1));
sheet.autoSizeColumn((short) 1);
celula1.setCellValue(relatorioPergunta.getVisitaQuestao().getQuestao().getDescricao());
HSSFCell celula2 = row.createCell((short) (2));
sheet.autoSizeColumn((short) 2);
}
FileOutputStream stream = new FileOutputStream("planilhausu.xls");
wb.write(stream);
File arquivo = new File("planilhausu.xls");
arquivoXLS = new DefaultStreamedContent(new FileInputStream(arquivo), "planilhausu/xls", "relatorio2.xls");
return arquivoXLS;
}[/code]
na linha onde esta assim:
FileOutputStream stream = new FileOutputStream("planilhausu.xls");
wb.write(stream);
se eu colocar assim:
FileOutputStream stream = new FileOutputStream("D:/planilhausu.xls");
wb.write(stream);
o relatorio é salvo normalmente no disco D: do meu pc
so que se eu colocar a parte do
File arquivo = new File("planilhausu.xls");
arquivoXLS = new DefaultStreamedContent(new FileInputStream(arquivo), "planilhausu/xls", "relatorio2.xls");
return arquivoXLS;
o sistema da erro 500 na tela, eu nao tenhu ideia do que pode ser porque segui esse modelo no pdf e deu certo
alguem saberia dizer se com xls é diferente?