Relatório IReport/Jasper roda no NetBeans mas não no TomCat

2 respostas
M

O código abaixo está dentro de um servlet e produz um relatório visivel quando testado dentro do NetBeans/TomCat.
No entanto, fora do NetBeans ( produção com TomCat direto ) o relatório, não aparece no browser. ( O jasperView nao carrega )

JasperPrint impressao = JasperFillManager.fillReport(fullpath+nomeRelatorio+".jasper",parameters,jrRS);
            JasperViewer jrviewer = new JasperViewer(impressao,true);
            JasperViewer.viewReport(impressao);

Alguem poderia me ajudar ?

2 Respostas

K

Verifique o conteúdo do seu fullpath+nomeRelatorio+".jasper". Se seu relatório é compilado junto com as demais classes, estão essa referencia que vc faz de seu .jasper deve referenciar ao .jasper dentro do classpath.

Veja se isso te ajuda.

M

Como não acontece nenhum erro, acredito que estão todas as referencias coretas, entao resolvi investigar o tomcat.
Fiz um teste simples

System.out.println(Antes);

Runtime.getRuntime().exec(c:\windows\system32\sol.exe);

System.out.println(Depois);

Dentro do NetBeans, rodo normalmente o jogo de paciência do windows.

fora do NetBeans, não carregou o jogo de paciencia, mas também nao deu erro, segue abaixo o arquivo stdout_.log
stdout_.log
Antes
Depois

Descobri que o tomcat quando rodado de dentro do NetBeans ele eh carregado no modo debug, e quando rodado normalmente, ele roda no modo default.
Este modo default, por segurança, desabilita várias possibilidades, uma delas é exatamente essa, pois ele considera rodar arquivos uma ação não segura.

Agora estou tentando encontrar como que eu faço para habilitar apenas essa opcao, ou se for o caso rodar no modo debug e habilitar todas, não seria a melhor, mas resolveria meu caso.

Você sabe em qual xml eu consigo verificar isto ou qual linha de comando ?

Criado 26 de julho de 2006
Ultima resposta 27 de jul. de 2006
Respostas 2
Participantes 2