JAva web start+relatorios

6 respostas
A

Ola pessoal!!

Tenho um projecto que é lançado via web start, e nesse projeccto tenho a possibilidade de criar um relatório.
A minha dúvida é a seguinte. Eu coloco o meu .jrxml num directorio qualquer, por exemplo C:\teste.jrxml. Quando corro o meu projecto no meu computador ele cria o relatório direitinho, mas quando abro via web start ele não encontra o ficheiro (penso eu, pois não o cria). Qual será o problema?Na verdade estou a executar o programa na minha máquina, quer localmente, quer por web start…

Obrigado

6 Respostas

C

Opa… pra acabar com esse problema… leve o seu JRXML junto com a sua aplicação, depois vc recupera ele via getClass().getResource()… que da certo, ok ?

A
Obrigado Cassolato. Já coloquei como tu disseste, porém apenas consigo fazer isso no netbeans, quando corro o .jar normalmente ele não funciona, e da-me uma
net.sf.jasperreport.engine.JRException

código:

URL arquivo = getClass().getResource("pproducao.jasper");
 if (arquivo == null) {
JOptionPane.showMessageDialog(null,"ficheiro .jasper nao encontrado");
return;
}

String file = URLDecoder.decode(arquivo.getFile(), "UTF-8");

 try{
        
    JasperReport jasperReport = (JasperReport) JRLoader.loadObject(file);    
    Map parameters = new HashMap();
    parameters.put("teste, "teste");
    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null,jrRS );
    JasperViewer jrviewer = new JasperViewer( jasperPrint, false );
    jrviewer.setVisible(true);

}catch( Exception e ) {
JOptionPane.showMessageDialog( null, "Erro:\n  " + e.toString());

}
C

tente colocar isso
URL …

JasperReport jasperReport = (JasperReport) JRLoader.loadObject(URL);

se nao der certo, mostre a exception que esta ocorrendo.

A

DEU CERTO!!!
:lol: :lol: :lol: :lol: :lol:
Brigadão pela ajuda!!! :wink:

R

Ola!
alguem poderia me ajudar?!
eu tenho um servlet rodando no jboss…q possui este trecho:

URL arquivo = getClass().getResource("meuJasper.jasper"); JasperReport jasperReport = (JasperReport) JRLoader.loadObject(arquivo);

e gera esta exception :

16:34:27,017 ERROR [[viewReport]] Servlet.service() for servlet viewReport threw exception java.lang.NullPointerException at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:13 9) at com..relatorios.viewReport.service(viewReport.java: 86) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFi lter.java:81) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:178) at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrinc ipalValve.java:39) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(Securit yAssociationValve.java:153) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValv e.java:59) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav a:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java :856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce ssConnection(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpo int.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWor kerThread.java:112) at java.lang.Thread.run(Thread.java:595)

C

Eu acredito que voce deve recuperar isso dentro de um diretorio especifico dentro do .jar

ou seja…

/br/seuDir/seuArquivo.jasper, isso deve funcionar, ok ?

Criado 7 de novembro de 2006
Ultima resposta 13 de mai. de 2008
Respostas 6
Participantes 3