Amigos,
to tentando abrir um relatorio feito no ireport pelo jasperreportviewer em outra maquina…e nao acontece nada… eu nao deveria installar alguma coisa a mais na maq ??na minha eu tenho o ireport instalado e funciona… alguem ja passou por isso?
Amigos,
to tentando abrir um relatorio feito no ireport pelo jasperreportviewer em outra maquina…e nao acontece nada… eu nao deveria installar alguma coisa a mais na maq ??na minha eu tenho o ireport instalado e funciona… alguem ja passou por isso?
as vezes é o caminho que está errado…
posta a parte do codigo que chama o relatório que agente te ajuda!!
Antes que me perguntem pq to lendo o .jrxml é pq aqui se eu for no .jasper direto da um erro… fui pesquisar e vi que é um bug…que se eu salvar o .jasper em versoes anteriores do ireport funciona…pra nao ter este trampo , compilo o jrxml no cogigo que funciona…
Engraçado que na minha maquina funciona perfeitamente…agora copiei a pasta dist do projeto e fui em outra maquina testar e deu merda…rs
String arquivo = "G:\\Bolsa\\Relatorios\\silvia.jrxml";
JasperDesign jasperDesign = JRXmlLoader.load(arquivo);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameterMap,conn);
JasperViewer jrviewer = new JasperViewer(jasperPrint, false);
jrviewer.setVisible(true);
ao inves de voce dizer o caminho assim
tenta colocar o relatorio na raiz do projeto e chama ele dessa forma
relatorios/relatorio.jrxml
essa pasta relatorio vai na raiz do seu projeto!
e dentro vai todos os relatorios
isso porque pode ser que em outro computador não tenha a unidade G e também não tenha os dados la
então colocando na raiz… e pegando o programa de outra maquina… ele ira buscar na raiz do programa!
eu intendi sua ideia, mas nao sei como fazer… onde eu crio essa pasta?? na pasta SRC?? Este arquivo ja ta lá dentro do projeto netbeans… e outra coisa, todas as maquinas aqui possuem o mesmo mapeamento de rede… e la eu coloquei estes arquivos…
como voce distribui a sua aplicação???
jar??
isso ai…copio a pasta dist pra maquina e crio um atalho no desktop… bem primario mais funfa…rs
CONSEGUI ver o erro pelo DOS…colei a foto ai…
o erro provavelmente é pelo fato de não ta achando o arquivo jrxml
faz assim… dentro da pasta dist faz uma pasta relatorios e colocar o jrxml dentro
e faz da maneira que te falei
FIZ isso mas da erro… olha o erro q deu rodando no DOS
C:\relatorios>java -jar Relatorios.jar
27/04/2011 12:25:11 org.hibernate.cfg.annotations.Version
INFO: Hibernate Annotations 3.3.1.GA
27/04/2011 12:25:11 org.hibernate.cfg.Environment
INFO: Hibernate 3.2.5
27/04/2011 12:25:11 org.hibernate.cfg.Environment
INFO: hibernate.properties not found
27/04/2011 12:25:11 org.hibernate.cfg.Environment buildBytecodeProvider
INFO: Bytecode provider name : cglib
27/04/2011 12:25:11 org.hibernate.cfg.Environment
INFO: using JDK 1.4 java.sql.Timestamp handling
27/04/2011 12:25:11 org.hibernate.ejb.Version
INFO: Hibernate EntityManager 3.3.2.GA
27/04/2011 12:25:11 org.hibernate.cfg.AnnotationBinder bindClass
INFO: Binding entity from annotated class: tabelas.TbRelatAtecnica
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findAll => SELECT t FROM TbRelatAtecn
ica t
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByIdTBRELATATECNICA => SELECT t F
ROM TbRelatAtecnica t WHERE t.idTBRELATATECNICA = :idTBRELATATECNICA
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByDtRelat => SELECT t FROM TbRela
tAtecnica t WHERE t.dtRelat = :dtRelat
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByAnalista => SELECT t FROM TbRel
atAtecnica t WHERE t.analista = :analista
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByAtivo => SELECT t FROM TbRelatA
tecnica t WHERE t.ativo = :ativo
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByMercado => SELECT t FROM TbRela
tAtecnica t WHERE t.mercado = :mercado
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findBySuporte1 => SELECT t FROM TbRel
atAtecnica t WHERE t.suporte1 = :suporte1
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findBySuporte2 => SELECT t FROM TbRel
atAtecnica t WHERE t.suporte2 = :suporte2
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findBySuporte3 => SELECT t FROM TbRel
atAtecnica t WHERE t.suporte3 = :suporte3
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByResistencia1 => SELECT t FROM T
bRelatAtecnica t WHERE t.resistencia1 = :resistencia1
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByResistencia2 => SELECT t FROM T
bRelatAtecnica t WHERE t.resistencia2 = :resistencia2
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByResistencia3 => SELECT t FROM T
bRelatAtecnica t WHERE t.resistencia3 = :resistencia3
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByPu => SELECT t FROM TbRelatAtec
nica t WHERE t.pu = :pu
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifSup1 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifSup1 = :classifSup1
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifSup2 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifSup2 = :classifSup2
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifSup3 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifSup3 = :classifSup3
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifRes1 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifRes1 = :classifRes1
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifRes2 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifRes2 = :classifRes2
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByClassifRes3 => SELECT t FROM Tb
RelatAtecnica t WHERE t.classifRes3 = :classifRes3
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByImagem => SELECT t FROM TbRelat
Atecnica t WHERE t.imagem = :imagem
27/04/2011 12:25:11 org.hibernate.cfg.annotations.QueryBinder bindQuery
INFO: Binding Named query: TbRelatAtecnica.findByComentario => SELECT t FROM TbR
elatAtecnica t WHERE t.comentario = :comentario
27/04/2011 12:25:11 org.hibernate.cfg.annotations.EntityBinder bindTable
INFO: Bind entity tabelas.TbRelatAtecnica on table TB_RELAT_ATECNICA
27/04/2011 12:25:11 org.hibernate.cfg.AnnotationConfiguration secondPassCompile
INFO: Hibernate Validator not found: ignoring
27/04/2011 12:25:11 org.hibernate.connection.DriverManagerConnectionProvider con
figure
INFO: Using Hibernate built-in connection pool (not for production use!)
27/04/2011 12:25:11 org.hibernate.connection.DriverManagerConnectionProvider con
figure
INFO: Hibernate connection pool size: 20
27/04/2011 12:25:11 org.hibernate.connection.DriverManagerConnectionProvider con
figure
INFO: autocommit mode: true
27/04/2011 12:25:11 org.hibernate.connection.DriverManagerConnectionProvider con
figure
INFO: using driver: com.mysql.jdbc.Driver at URL: jdbc:mysql://algo-bdsp-p01:330
6/algo
27/04/2011 12:25:11 org.hibernate.connection.DriverManagerConnectionProvider con
figure
INFO: connection properties: {user=usr_algo, password=****, autocommit=true, rel
ease_mode=auto}
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: RDBMS: MySQL, version: 5.0.51a-24+lenny4
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC driver: MySQL-AB JDBC Driver, version: mysql-connector-java-5.1.6 ( R
evision: ${svn.Revision} )
27/04/2011 12:25:11 org.hibernate.dialect.Dialect
INFO: Using dialect: org.hibernate.dialect.MySQLDialect
27/04/2011 12:25:11 org.hibernate.transaction.TransactionFactoryFactory buildTra
nsactionFactory
INFO: Transaction strategy: org.hibernate.transaction.JDBCTransactionFactory
27/04/2011 12:25:11 org.hibernate.transaction.TransactionManagerLookupFactory ge
tTransactionManagerLookup
INFO: No TransactionManagerLookup configured (in JTA environment, use of read-wr
ite or transactional second-level cache is not recommended)
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic flush during beforeCompletion(): disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Automatic session close at end of transaction: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC batch size: 15
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC batch updates for versioned data: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Scrollable result sets: enabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JDBC3 getGeneratedKeys(): enabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Connection release mode: auto
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Maximum outer join fetch depth: 2
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default batch fetch size: 1
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Generate SQL with comments: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Order SQL updates by primary key: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Order SQL inserts for batching: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory createQueryTranslatorFacto
ry
INFO: Query translator: org.hibernate.hql.ast.ASTQueryTranslatorFactory
27/04/2011 12:25:11 org.hibernate.hql.ast.ASTQueryTranslatorFactory
INFO: Using ASTQueryTranslatorFactory
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query language substitutions: {}
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: JPA-QL strict compliance: enabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Second-level cache: enabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Query cache: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory createCacheProvider
INFO: Cache provider: org.hibernate.cache.NoCacheProvider
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Optimize cache for minimal puts: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Structured second-level cache entries: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Statistics: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Deleted entity synthetic identifier rollback: disabled
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Default entity-mode: pojo
27/04/2011 12:25:11 org.hibernate.cfg.SettingsFactory buildSettings
INFO: Named query checking : enabled
27/04/2011 12:25:11 org.hibernate.impl.SessionFactoryImpl
INFO: building session factory
27/04/2011 12:25:11 org.hibernate.impl.SessionFactoryObjectFactory addInstance
INFO: Not binding factory to JNDI, no JNDI name configured
27/04/2011 12:25:27 relatorios.relatorioJF imprAtivoBTActionPerformed
SEVERE: null
net.sf.jasperreports.engine.JRException: Error compiling report java source file
s : C:\relatorios\report1_1303917927734_844771.java
at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJ
avacCompiler.java:93)
at net.sf.jasperreports.engine.design.JRAbstractClassCompiler.compileUni
ts(JRAbstractClassCompiler.java:67)
at net.sf.jasperreports.engine.design.JRAbstractCompiler.compileReport(J
RAbstractCompiler.java:192)
at net.sf.jasperreports.engine.JasperCompileManager.compileReport(Jasper
CompileManager.java:219)
at relatorios.Relatorio.GeraRelatAtivo(Relatorio.java:72)
at relatorios.relatorioJF.imprAtivoBTActionPerformed(relatorioJF.java:72
4)
at relatorios.relatorioJF.access$900(relatorioJF.java:37)
at relatorios.relatorioJF$10.actionPerformed(relatorioJF.java:202)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
ce)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.io.IOException: Cannot run program “javac”: CreateProcess error=
2, O sistema nÒo pode encontrar o arquivo especificado
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJ
avacCompiler.java:62)
… 32 more
Caused by: java.io.IOException: CreateProcess error=2, O sistema nÒo pode encont
rar o arquivo especificado
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
… 36 more
cara… nao da pra entender… eu instalei o netbeans na maquina client… ai pelo netbeans o relatorio funciona… pelo .jar nao funciona…e o arquivo ta para uma pasta local…para nao ter aquele problema de acesso a rede e o caramba a quatro…
quando eu falei pra voce fazer uma pasta relatorio na raiz… não é na raiz do C:
é na raiz da onde voce colocou o .jar
e não precisa instalar o netbeans em cada cliente…
manda o codigo e manda a estrutura de pastas aonde ta o seu arquivo
eu testei na pasta dist, no c: e nada funcionou…rs
Criei uma pasta c:\relatorios. onde esta meu projeto
o jrxml esta em c:\relatorios\relatorios
segue o codigo
public void GeraRelatAtivo( String ativo,String data,Connection conn)
throws JRException, ClassNotFoundException, SQLException, ParseException {
SimpleDateFormat dt = new SimpleDateFormat("yyyy-MM-dd");
HashMap parameterMap =
new HashMap( );
parameterMap.put("ativo", ativo);
String arquivo = "/relatorios/silvia.jrxml";
try {
JasperDesign jasperDesign = JRXmlLoader.load(arquivo);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameterMap,conn);
JasperViewer jrviewer = new JasperViewer(jasperPrint, false);
jrviewer.setVisible(true);
conn.close();
} catch (SQLException ex) {
conn.close();
Logger.getLogger(Relatorio.class.getName()).log(Level.SEVERE, null, ex);
}
oh… faz assim oh
coloca a sua pasta dist no c:
e coloca o relatorios dentro do dist
dai fica assim
C:/dist
C:/dist/relatorios
e olha se não está faltando nenhuma biblioteca na hora de voce exportar o seu projeto…
e faz assim
String arquivo = “relatorios/silvia.jrml”;
entao… fazendo isso no meu comp funciona… ai eu pego esta mesma pasta do meu comp e jogo pra outra maquina e nao rola
To pensando num treco…este relatorio tem um monte de imagens… estas imagens estao gravadas na rede… ambos os comps tem o mapeamento do diretorio identico… pode ser uma cagada em alguma imagem??
hum… pode ser sim
oh… vo te explica a maneira que eu faço
o meu raiz tem as seguintes pastas
clientes
empresa
produtos
estoque.jar
relatorios
então quando eu preciso pegar algo é isso que eu faço
eu pego as fotos do cliente na pasta cliente e assim por diante
então. não da erro de mapeamento de imagens
e no seu caso… se voce usar windows o certo é as imagens ficarem somente no servidor… que dai voce consegue pegar elas
no linux eu não sei como funciona… então o certo seria gravar as imagens no banco… ou dar uma estudada como funciona
o problema de gravar as imagens no banco é deixar o banco lento… eu optei por gravar so os endereços no banco e as imagens na rede… eu fiz um teste agora… coloquei todas as imagens numa pasta /imagens na raiz do pgm… e dá o mesmo problema… na minha maquina funciona…na outra não…deve ser alguma coisa diferente disso… sei la… pq as imagens estao todas locais agora…
Agradeço o apoio Dudu… depois de perder um pouco mais dos poucos cabelos q me restaram consegui achar o problema.
Faltava uma lib : jdt-compiler-3.1.1.jar … por isso só compilava no netbeans.
Assim ja fica a dica…se o relatorio ireport compila no netbeans mas nao pelo jar, ja vai ver se esta biblioteca ta adicionada
obrigado pela força galera…
[quote=andreReisLima]Agradeço o apoio Dudu… depois de perder um pouco mais dos poucos cabelos q me restaram consegui achar o problema.
Faltava uma lib : jdt-compiler-3.1.1.jar … por isso só compilava no netbeans.
Assim ja fica a dica…se o relatorio ireport compila no netbeans mas nao pelo jar, ja vai ver se esta biblioteca ta adicionada
obrigado pela força galera…[/quote]
Me fala todas as libs q estao no seu projeto ! Estou com o mesmno problema. Acabei de adicionar a tal jdt-compiler-3.1.1.jar e nao
funcionou (pelo . jar nas maquinas clientes).
To apontando o caminho p o .jasper