Socorro com Jasper Report ireport, nao carrega

6 respostas
rbroz85

Bom dia amigos!

em uma pagina web… tenho um botao que chama um relatorio…
faz-se uma pesquisa no banco e tudo e apresenta o relatorio para download !

acontece que… local funciona perfeitamente !

quando jogo para produção !.. quando clica no botao… nada acontece… so da um reload na pagina e a janela de download de arquivo nao aparece !

o que pode ser isso ?

obrigado

6 Respostas

A

Hmmm não há como você ver e postar o log do servidor de produção?

Chutando, assim, podem ser tantas coisas.

O meu chute é o acesso ao banco que não deve estar acontecendo, por alguma razão (usuário/senha/endereço/variável de configuração).

Você tá utilizando JNDI?

rbroz85

to passando os dados por collection!

engraçado que… no IE funciona ! no firefox nao

A

Ok.

No ie funciona e no ff não… se eu ganhasse 1 centavo cada vez que ouvisse isso, estaria rico… rs…

Tudo bem, a sua aplicação resgata os dados do Banco, coloca em uma collection e aí você exporta pra pdf, é isso?

No log, alguma novidade?

Qual o comportamento de seu firefox quando vai abrir um pdf qualquer? Ele invoca o reader? Ou exibe na própria página?

rbroz85

hehehehhe

exatamente !
mas tem vezes que nem no IE funciona !.. na oda pra entender

eu pego os dados .. jogo pro collection e jogo pro relatorio

e depois peço para abri janela de download com esse metodo:

private void writeBytes(byte[] bytes,boolean isDownload){
        HttpServletResponse response = new UtilFaces().getResponse();
        if (bytes != null && bytes.length > 0) {
            ServletOutputStream ouputStream = null;
            try {
                response.setContentType("application/pdf");

                if(isDownload)
                    response.setHeader("Content-disposition", "attachment;filename=relatorio.pdf");

                response.setContentLength(bytes.length);
                ouputStream = response.getOutputStream();
                ouputStream.write(bytes, 0, bytes.length);
                ouputStream.flush();
                ouputStream.close();
                new UtilFaces().getFacesContext().responseComplete();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
         }
    }

tem alguma coisa a ver... se o managedBean estiver com escopo Session ou Request ?

A

Acho que isso pode te dar uma luz…

http://www.guj.com.br/posts/list/22450.java

Sem ver o log, acho complicado e ir mais além seria chutômetro mesmo…

Posta aí a solução se conseguir…

Abraço.

rbroz85

Pronto… nao foi erro… e sim desatenção mesmo !
foi coincidencia nao funcionar no ff e funcionar no ie…
testei o da produção no ff e o local no ie… ai acusei de nao funcionar…

detalhe importante…

na produração esta rodando no linux !

como meu relatorio tem subrelatorio… ele passa o caminho mas passa assim “\relaorio2.jasper”

como esta no linux… ele nao reconhece “\” nao acha…

deve se mudar para “/”

gente, obrigado pela atençao ! fico mt grato e feliz de saber que posso contar com a comunidade.
e se depender de mim. vcs podem contar comigo no que vier… !
obrigado !

Criado 1 de outubro de 2009
Ultima resposta 1 de out. de 2009
Respostas 6
Participantes 2