Pessoal Boa tarde tenho um aplicação e em minha maquina ela está rodando tudo certinho criei um .exe e roda tudo normal, mas quando eu instalei para um cliente os relatórios não foram gerados alguem pode me explicar o porque? Os .jasper se encontram na pasta de instalação normalmente.
Cata nos logs o erro que está dando e posta aqui pra gente… não dá pra saber só com isso, tem muita coisa que pode ser.
Abraço!
gabrielemidio
Como citei na minha maquina roda normal o problema e quando eu instalei no computador do cliente onde não está gerando esses relatórios pelo IReport. Não ocorre nenhum problema na linha de comando.
grato
Gabriel
leoramos
Não gerar pode ser um bocado de coisa… é uma pesquisa? Ele por acaso não está fazendo uma pesquisa que retorne um dataSource vazio?
Abraço!
gabrielemidio
Acredito que não seja o datasource por que ele me retorna todos os dados pedidos normalmente. Por tanto o banco de dados da empresa não tem nenhum problema senão ocorreria o mesmo problema aqui talvez seja a falta de algum aplicativo do Jasper que eu tenha que instalar lá.
(é uma pesquisa sim)
Obrigado.
leoramos
Vejamos:
o dataSource pode estar vazio (esta possibilidade está excluída por você, então já era);
o relatório está sendo gerado diretamente para uma pasta, mas essa pasta não existe, gerando uma exceção - que no caso, está calada;
o método fillReport não está encontrando o arquivo compilado, o que também gera uma exceção, também calada.
São as possibilidades que consigo imaginar. Se está faltando algo no teu classpath, ele irá gerar uma exceção, de qualquer forma.
Faz o seguinte, cola o trecho de código que tu usar pra executar o relatório, com suas devidas dependências.
Abraço!
luxu
tive problemas com relatórios qdo não estava instalado o acrobat reader, no meu caso é app para WEB…
Não, mestre; o trecho de código todo, o método inteiro.
Assim dá pra tentar avaliar alguma coisa, senão não dá mesmo, ainda mais que tu tá sem stacktrace.
Abraço!
gabrielemidio
Desculpe =) achei que era o caminho ai é o public para gerar o orçamento
publicvoidrelatorioorca(intparamcodorca){try{Class.forName("com.mysql.jdbc.Driver");con=DriverManager.getConnection("jdbc:odbc:tcc","root","");//String caminho = "\\src\\relatorios\\orcamento.jasper";//conn = (new ConnectionToJasperReports()).getConn();// System.out.println(paramcodorca);//System.out.println("Gerando relatorio...");// pega o caminho f�sico at� o arquivo .jasper//String arquivo = System.getProperty("user.dir") + caminho;InputStreamarquivo=getClass().getResourceAsStream("/relatorios/orcamento.jasper");//System.out.println(arquivo);// chama fillReportHashMapparametros=newHashMap();parametros.put("cod_orca",paramcodorca);//JasperPrint jp = JasperFillManager.fillReport(arquivo,new HashMap(),conn);JasperPrintjp=JasperFillManager.fillReport(arquivo,parametros,con);// exibe o relat�rio com viewReportJasperViewer.viewReport(jp,false);con.close();}catch(JRExceptione){e.printStackTrace();}catch(Exceptionex){ex.printStackTrace();}}
leoramos
É, mesmo assim não ajuda muito. É desktop, né?
Certeza que tem stacktrace aí… tens que executar ele pelo console pra poder ver esse stacktrace. Se for web, corre atrás do log do Tomcat.
Minha suspeita é isso aqui: /relatorios/orcamento.jasper, ele não conhece essa referẽncia.
A última pergunta é bem idiiota: o BD tá instalado e rodando?
Abraço!
gabrielemidio
Isso e desktop, então to suspeitando da URL que informei talvez, Sim o banco está rodando normalmente.
vou dar um olhada nessa URL e ver se o problema é ali talvez seja eu vou pegar o caminho inteiro até ela e executar.