Relatórios do iReport funcionam na minha máquina, mais não quando faço o instalador!

Bom, sou novo aqui e com Java tb, o "causo " é o seguinte, eu fiz um projeto utilizando o NetBeans 7.2.1, compila certinho, e pra gerar recibos e relatórios
utilizei o iReport, na minha máquina chama os relatórios:

  • fiz a pasta default relatorio que chamo assim.
public void relatórioGeralForn() {

        InputStream inputStream;
        inputStream = getClass().getResourceAsStream("/RelFornCadastrados.jasper");

        // mapa de parâmetros do relatório (ainda vamos aprender a usar)
        Map parametros = new HashMap();


        try {
            // abre o relatório
            ReportUtils.openReport("rRelFornCadastrados", inputStream, parametros,
                    ConnectionFactory.getSakilaConnection());
        } catch (SQLException | JRException exc) {
        }

    }

Bom na minha máquina chama o relatorio, mais quando utilizei instaladores como o Jammer e o INOSetup , não chama os relatórios, eu ja copiei
a pasta relatórios e coloquei dentro da pas /dist/lib , ja coloquei em c:/
Não sei pra onde correr, alguem sabe me ajudar como fica a estrutura de pastas com esses relatorios do iReport? ou como corrijo isso?

E deixa eu adivinhar, graças a essa desgraça aqui

catch (SQLException | JRException exc) {  
        } 

Se eu te perguntar qual a exceção gerada, você vai me dizer que não dispara exceção ou que não sabe… Certo?

Brother, só coloca exc.printStackTrace() para você identificar sua exception…

[quote=drsmachado]E deixa eu adivinhar, graças a essa desgraça aqui

catch (SQLException | JRException exc) {  
        } 

Se eu te perguntar qual a exceção gerada, você vai me dizer que não dispara exceção ou que não sabe… Certo?[/quote]

drsmachado se a duvida de um iniciante te irrita, simplesmente não responda, não precise demonstrar seu comportamento agressivo e inútil em um Forum cujo objetivo principal é o aprendizado.

Passe bem!

[quote=drsmachado]E deixa eu adivinhar, graças a essa desgraça aqui

catch (SQLException | JRException exc) {  
        } 

Se eu te perguntar qual a exceção gerada, você vai me dizer que não dispara exceção ou que não sabe… Certo?[/quote]

Não gera exceção pq na minha máquina funciona, inclusive o instalador, eu uso um Windows 7 64 bits ultimate, na minha máquina chama todos os relatórios

O meu problema ta justamente quando vou colocoar em outra maquina, o ss ta meio ruim mais da pra ver que não gerou nada de excessão(acho)
pelo que pesquisei seria o conteúdo da pasta dist, que tem a pasta lib e o arquivo.jar (ou zip).

vlw a resposta, eu coloquei e apareceu isso.

[EL Info]: 2013-01-29 10:43:47.571–ServerSession(25390208)–EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461
[EL Info]: 2013-01-29 10:43:48.325–ServerSession(25390208)–file:/C:/Users/MARCELO/Desktop/SOFTWARE DISKCACAMBA/DiskCacamba/build/classes/_diskcacambaPU login successful
[color=red]log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment).
log4j:WARN Please initialize the log4j system properly.
[/color]

e não faço idéia o que significa

cria um pacote no seu projeto com o nome relatorios,

neste pacote adicione o seu arquivo jasper, altere a chamada da geração para:

[quote=javanovice]cria um pacote no seu projeto com o nome relatorios,

neste pacote adicione o seu arquivo jasper, altere a chamada da geração para:

inputStream = getClass().getResourceAsStream("/relatorios/RelFornCadastrados.jasper");  

[/quote]

pra eu conseguir fazer chamar os relatórios na minha máquina eu fiz o seguinte, clicquei com o botão direito em cima do nome do projeto, e fui em propriedades, depois adicionei uma pasta padrão chamada relatorios, com Label Relatórios

e se eu mudo a chamada dai para de funcionar até no meu pc

[quote=javanovice][quote=drsmachado]E deixa eu adivinhar, graças a essa desgraça aqui

catch (SQLException | JRException exc) {  
        } 

Se eu te perguntar qual a exceção gerada, você vai me dizer que não dispara exceção ou que não sabe… Certo?[/quote]

drsmachado se a duvida de um iniciante te irrita, simplesmente não responda, não precise demonstrar seu comportamento agressivo e inútil em um Forum cujo objetivo principal é o aprendizado.

Passe bem![/quote]
Quem é você mesmo?

Primeiro, um iniciante não estaria fazendo algo com o iReport.
Quando você for capaz de entender que há problemas de verdade e falta de atenção, poderá ter o privilégio de se dirigir a mim.
E não, não passe bem.

vlw a resposta, eu coloquei e apareceu isso.

[EL Info]: 2013-01-29 10:43:47.571–ServerSession(25390208)–EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461
[EL Info]: 2013-01-29 10:43:48.325–ServerSession(25390208)–file:/C:/Users/MARCELO/Desktop/SOFTWARE DISKCACAMBA/DiskCacamba/build/classes/_diskcacambaPU login successful
[color=red]log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment).
log4j:WARN Please initialize the log4j system properly.
[/color]

e não faço idéia o que significa
[/quote]
É apenas isto que o stackTrace imprime? Por que eu tenho a impressão que estão faltando informações nisto aí?

Sim é tudo, acho que não consegui me fazer entender, e peço desculpa por isso, mais o projeto esta funcionando perfeitamente, os relatórios são chamados e essa é a unica excessão gerada, a minha duvida é quanto ao problema no intalador pra outra máquina, eu achei que fosse erro no instalador e copiei a o conteudo da pasta dist do projeto, isso depois de construir, ai quando executo o jar em outro pc ele funciona, só não chama os formulários

Talvez o erro esteja no seu relatorio, voce verificou o caminho dele no IReport ?

Isso que aparece na exception:

Existe esse caminho na outra maquina que voce esta instalando o software ?

[quote=rof20004]Talvez o erro esteja no seu relatorio, voce verificou o caminho dele no IReport ?

Isso que aparece na exception:

Existe esse caminho na outra maquina que voce esta instalando o software ?[/quote]

Obrigado por postar, bom não verifiquei não,e como eu faço pra mudar isso? pra ele chamar uma pasta no c: por exemplo? eu tendei mudar a expressão para

Crie uma pasta no C: com nome Relatorios e colei todos os arquivos .jasper e .jrxml dentro
mais apareceu uma excessão com uma penca de linha: segue

[EL Info]: 2013-01-29 12:52:07.117--ServerSession(25888817)--EclipseLink, version: Eclipse Persistence Services - 2.3.2.v20111125-r10461
[EL Info]: 2013-01-29 12:52:07.804--ServerSession(25888817)--file:/C:/Users/MARCELO/Desktop/SOFTWARE DISKCACAMBA/DiskCacamba/build/classes/_diskcacambaPU login successful
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2283)
	at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2296)
	at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2767)
	at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:798)
	at java.io.ObjectInputStream.<init>(ObjectInputStream.java:298)
	at net.sf.jasperreports.engine.util.ContextClassLoaderObjectInputStream.<init>(ContextClassLoaderObjectInputStream.java:53)
	at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:214)
	at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:405)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)
	at utils.ReportUtils.openReport(ReportUtils.java:45)
	at br.com.view.LocacaoView.abrirRelatorioClientes(LocacaoView.java:735)
	at br.com.view.LocacaoView.jButton1ActionPerformed(LocacaoView.java:561)
	at br.com.view.LocacaoView.access$1300(LocacaoView.java:28)
	at br.com.view.LocacaoView$FormListener.actionPerformed(LocacaoView.java:474)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
	at java.awt.Component.processMouseEvent(Component.java:6504)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
	at java.awt.Component.processEvent(Component.java:6269)
	at java.awt.Container.processEvent(Container.java:2229)
	at java.awt.Component.dispatchEventImpl(Component.java:4860)
	at java.awt.Container.dispatchEventImpl(Container.java:2287)
	at java.awt.Component.dispatchEvent(Component.java:4686)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
	at java.awt.Container.dispatchEventImpl(Container.java:2273)
	at java.awt.Window.dispatchEventImpl(Window.java:2713)
	at java.awt.Component.dispatchEvent(Component.java:4686)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
	at java.awt.EventQueue.access$000(EventQueue.java:101)
	at java.awt.EventQueue$3.run(EventQueue.java:666)
	at java.awt.EventQueue$3.run(EventQueue.java:664)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.awt.EventQueue$4.run(EventQueue.java:680)
	at java.awt.EventQueue$4.run(EventQueue.java:678)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Existe sub-relatorio nesse seu relatorio ? Verifica um parametro chamado SUBREPORTDIR, e veja onde ele aponta.

Pra ser franco eu não sei, a não ser que ele crie subdiretórios sozinho, acho que não, e não achei nada de SUBREPORTDIR

imaginei que o erro estivesse na hora de chamar:

será que o “/” é o default, esse default seria o C: ? ou a psta dist? ou o
caminho do projeto C:\Users\MARCELO\Desktop\SOFTWARE DISKCACAMBA\DiskCacamba\relatorios?

Alguem sabe se existe a necessidade de exportar os relatorios? ou compilar os relatorios separadamente? teve um post que sugeriram uma solução mais no eclipse que seria

  1. Clique direito no projeto => Export => selecionar em Java: JAR File => Next => selecionar o local do projeto: \workspace<nomeProjeto>\src => Finish.

  2. Depois é só incluir no classpath do iReport => Ferramentas => Opções => Classpath => \diretorioProjeto<arquivo>.jar

  3. Criar a conexão e testar.

o problema é como fazer isso no netbeans

Acho que encontrei um rumo, porém não consegui resolver ainda, eu uso o NetBeans 7.2.1, eu não sei como adiciono os relatórios no classpath.

http://javafree.uol.com.br/topic-872557-Jar-nao-abre-relatorios.html

opa blz cara então no eclipse eu faço dessa forma.

Manifest-Version: 1.7 Specification-Title: "seu projeto" Specification-Version: "1.0.1" Specification-Vendor: "Eu" Class-Path: lib/backport175-1.1.RC1-snapshot.jar lib/barbecue-1.1.jar lib/bsad-framework-components-cryptography-2.0.1.jar lib/bsad-framework-utilities-1.2.jar lib/bsf-2.4.0.jar lib/bsh-2.0b4.jar lib/commons-beanutils-1.7.jar lib/commons-collections-2.1.jar lib/commons-dbcp-1.2.2.jar lib/commons-digester-1.8.jar lib/commons-el-1.0.jar lib/commons-jxpath-1.2.jar lib/commons-pool-1.3.jar lib/commons-validator-1.3.1.jar lib/derby.jar lib/derbyclient.jar lib/derbynet.jar lib/derbytools.jar lib/genesis-annotation-jdk5-3.1.jar lib/genesis-client-3.1.jar lib/genesis-client-swing-3.1.jar lib/genesis-shared-annotated-3.1.jar lib/itext-1.3.1.jar lib/jakarta-taglibs-standard-1.1.2.jar lib/jcommon-1.0.2.jar lib/jdtcore-3.1.0.jar lib/js-1.6R5.jar lib/jsp-api.jar lib/jxl-2.6.4.jar lib/log4j-1.2.13.jar lib/swing-layout-1.0.jar lib/validation-1.4.0.jar lib/xml-apis-1.3.02.jar lib/jakarta-oro-2.0.8.jar lib/swing-worker.jar lib/swingx-0.9.1.jar lib/reusable-components-20060810.jar lib/activation-1.0.2.jar lib/bsad-framework-controller-1.2.jar lib/commons-codec-1.3.jar lib/commons-httpclient-3.0.jar lib/VPRS-NumeroControle.jar lib/j2ee.jar lib/jaxen-1.1-beta-8.jar lib/jdom-1.0.jar lib/mail-1.3.3_01.jar lib/spring-1.2.6.jar lib/stax-api-1.0.1.jar lib/xbean-2.1.0.jar lib/xbean-spring-2.2.jar lib/xfire-all-1.2.5.jar lib/xml.jar lib/XmlSchema-1.1.jar lib/fontbox-1.1.0.jar lib/pdfbox-1.1.0.jar lib/swingx_v0102.jar lib/ajuda-lib.jar lib/jhall.jar lib/jasperreports-3.0.0.jar lib/iReport.jar lib/saaj.jar lib/wsdl4j-1.5.1.jar lib/commons-discovery-0.2.jar lib/sdk-base.jar lib/sdk-provider.jar lib/jtablet.jar lib/wstx-asl-2.9.jar lib/lui.jar lib/axis-ant.jar lib/axis.jar lib/jaxrpc.jar lib/vprs-inclusaovidas.jar lib/vprs-consultarapolice.jar lib/vprs-webservice.jar lib/commons-logging-1.0.4.jar Main-Class: main.Main
se for isso que esta pedindo e que entendi, pode ser isso, pois tive um problema quando gerava o setup e não imprimia o relatório por completo.
obs: a versão é do 3.0.0

[quote=RiQuInHo_$_$]opa blz cara então no eclipse eu faço dessa forma.

Manifest-Version: 1.7 Specification-Title: "seu projeto" Specification-Version: "1.0.1" Specification-Vendor: "Eu" Class-Path: lib/backport175-1.1.RC1-snapshot.jar lib/barbecue-1.1.jar lib/bsad-framework-components-cryptography-2.0.1.jar lib/bsad-framework-utilities-1.2.jar lib/bsf-2.4.0.jar lib/bsh-2.0b4.jar lib/commons-beanutils-1.7.jar lib/commons-collections-2.1.jar lib/commons-dbcp-1.2.2.jar lib/commons-digester-1.8.jar lib/commons-el-1.0.jar lib/commons-jxpath-1.2.jar lib/commons-pool-1.3.jar lib/commons-validator-1.3.1.jar lib/derby.jar lib/derbyclient.jar lib/derbynet.jar lib/derbytools.jar lib/genesis-annotation-jdk5-3.1.jar lib/genesis-client-3.1.jar lib/genesis-client-swing-3.1.jar lib/genesis-shared-annotated-3.1.jar lib/itext-1.3.1.jar lib/jakarta-taglibs-standard-1.1.2.jar lib/jcommon-1.0.2.jar lib/jdtcore-3.1.0.jar lib/js-1.6R5.jar lib/jsp-api.jar lib/jxl-2.6.4.jar lib/log4j-1.2.13.jar lib/swing-layout-1.0.jar lib/validation-1.4.0.jar lib/xml-apis-1.3.02.jar lib/jakarta-oro-2.0.8.jar lib/swing-worker.jar lib/swingx-0.9.1.jar lib/reusable-components-20060810.jar lib/activation-1.0.2.jar lib/bsad-framework-controller-1.2.jar lib/commons-codec-1.3.jar lib/commons-httpclient-3.0.jar lib/VPRS-NumeroControle.jar lib/j2ee.jar lib/jaxen-1.1-beta-8.jar lib/jdom-1.0.jar lib/mail-1.3.3_01.jar lib/spring-1.2.6.jar lib/stax-api-1.0.1.jar lib/xbean-2.1.0.jar lib/xbean-spring-2.2.jar lib/xfire-all-1.2.5.jar lib/xml.jar lib/XmlSchema-1.1.jar lib/fontbox-1.1.0.jar lib/pdfbox-1.1.0.jar lib/swingx_v0102.jar lib/ajuda-lib.jar lib/jhall.jar lib/jasperreports-3.0.0.jar lib/iReport.jar lib/saaj.jar lib/wsdl4j-1.5.1.jar lib/commons-discovery-0.2.jar lib/sdk-base.jar lib/sdk-provider.jar lib/jtablet.jar lib/wstx-asl-2.9.jar lib/lui.jar lib/axis-ant.jar lib/axis.jar lib/jaxrpc.jar lib/vprs-inclusaovidas.jar lib/vprs-consultarapolice.jar lib/vprs-webservice.jar lib/commons-logging-1.0.4.jar Main-Class: main.Main
se for isso que esta pedindo e que entendi, pode ser isso, pois tive um problema quando gerava o setup e não imprimia o relatório por completo.
obs: a versão é do 3.0.0[/quote]

Vc coloca esse código onde?

Pra ser franco eu não sei, a não ser que ele crie subdiretórios sozinho, acho que não, e não achei nada de SUBREPORTDIR

imaginei que o erro estivesse na hora de chamar:

será que o “/” é o default, esse default seria o C: ? ou a psta dist? ou o
caminho do projeto C:\Users\MARCELO\Desktop\SOFTWARE DISKCACAMBA\DiskCacamba\relatorios?[/quote]

MarceloMVT até onde eu seu o caminho que você passou “/relatoriogeral.jasper” quer dizer que o arquivo relatoriogeral.jasper está dentro da mesma pasta do seu .JAR que você converteu para .EXE. O melhor seria criar uma pasta para ele e passar por exemplo “/Relatorios/relatoriogeral.jasper”. Esse erro só ocorre quando você converte para um instalador .EXE?