Duvida Relatório Web

2 respostas
J

Bem sou novo no desenvolvimento java para web, estou com uma duvida, no código abaixo mostro a parte que o sistema grava o PDF no disco (servidor) ate ai tudo bem, estou também mostrando o relatório tudo certinho. a minha duvida é a seguinte, quando publicar minha aplicação, se no caso de varias pessoas gerando o mesmo relatório ao mesmo tempo, como controlar isso, pois acho que o sistema vai ficar sobrepondo estes relatórios, o que em momento de muita inserção de dados e impressão, pode mostrar relatórios errados, como resolver isso? Existe uma maneira de o servidor de aplicação controlar isso? Ou tenho que criar uma maneira pelo nome do relatório?

JasperPrint jasperPrint = JasperFillManager.fillReport(caminhoJasper + "RelatorioTabelaLocalizacao.jasper", parametros, vetor);

        JasperPrintManager.printReportToPdfFile(jasperPrint, caminhoPdf + "/RelatorioTabelaLocalizacao.pdf");
        response.sendRedirect("RelatorioTabelaLocalizacao.pdf");

2 Respostas

leoramos

Cara, antes de mais nada, verifica a real necessidade da criação de arquivo em disco. Se é só pro usuário visualizar e salvar uma cópia se necessário, podes usar o JasperViewer.
Entretanto, quando isso me foi necessário, eu concatenei o timestamp (em milissegundos) no final do nome do arquivo, antes da extensão.

PS: lembre-se de criar uma rotina de “expiração” pra esse monte de pdf aí, um arquivo morto, algo que o valha… senão em poucos dias teu servidor tá abarrotado de coisa inútil.

Abraço!

J

leoramos:
Cara, antes de mais nada, verifica a real necessidade da criação de arquivo em disco. Se é só pro usuário visualizar e salvar uma cópia se necessário, podes usar o JasperViewer.
Entretanto, quando isso me foi necessário, eu concatenei o timestamp (em milissegundos) no final do nome do arquivo, antes da extensão.

PS: lembre-se de criar uma rotina de “expiração” pra esse monte de pdf aí, um arquivo morto, algo que o valha… senão em poucos dias teu servidor tá abarrotado de coisa inútil.

Abraço!

Agradeço a sua ajuda, eu realmente havia pensado em alguma coisa com o timestamp, mas se puder apenas visualizar seria melhor mesmo, você poderia me mandar de acordo com o código que coloquei anteriormente, como mudo para o sistema visualizar diretamente o pdf no navegador sem gravar no disco.

Aguardo sua resposta

Criado 9 de junho de 2011
Ultima resposta 10 de jun. de 2011
Respostas 2
Participantes 2