Erro ao gerar relatorio jasper

4 respostas
Kiko1

Boa noite galera, criei um relatório no ireport com o nome de clientes, entretanto não consigo visualiza-lo, gostaria de saber se alguém poderia me ajudar com meu código, ou se possível me ajudar com algum outro código.

Segue abaixo o código:

package kartodromo;



import java.sql.*; 
import java.sql.Connection;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.view.JasperViewer;


public class RelatorioProdutos {


 private static Connection getConnection( ) throws  
ClassNotFoundException, SQLException 
 { 
   String driver = "com.mysql.jdbc.Driver"; 
   String url = "jdbc:mysql://localhost:3306/test"; 
   String user = "root"; 
   String password = ""; 
    
   Class.forName(driver); 
   Connection con = DriverManager.getConnection( url, user, password ); 
   return con; 
 } 
 /* Gera Relatorio e visualiza-o */
 public void geraRelatorio( ) throws JRException, Exception 
 { 
   Connection con = getConnection( ); 
   Statement stm = con.createStatement( ); 
   String query = "select * from clientes"; 
   ResultSet rs =  stm.executeQuery( query ); 
/* implementação da interface JRDataSource para DataSource ResultSet */
   JRResultSetDataSource jrRS = new JRResultSetDataSource( rs ); 
   
   /* HashMap de parametros utilizados no relatório. Sempre instanciados */
   Map parameters = new HashMap(); 
   // parameters.put("COLUNA", valor);
   
   /* Preenche o relatório com os dados. Gera o arquivo BibliotecaPessoal.jrprint */ 
   JasperFillManager.fillReportToFile( "Clientes.jasper", parameters, jrRS ); 
    /* Exporta para o formato PDF */
    JasperExportManager.exportReportToPdfFile( "Clientes.jrprint" ); 
   /* Preenche o relatorio e o salva diretamente em arquivo PDF. Sem
       a necessidade do .jrprint */
   // JasperRunManager.runReportToPdfFile("BibliotecaPessoal.jasper", parameters, jrRS);
   
   /* Visualiza o relatório em formato PDF */ 
   JasperViewer.viewReport( "Clientes.pdf", false );   
 } 
   
   public static void main(String[] args) throws JRException, Exception 
   { 
     new RelatorioProdutos().geraRelatorio(); 
   } 
}

E esse é o erro:

Exception in thread "main" java.lang.NoSuchMethodError: net.sf.jasperreports.engine.component.DefaultComponentManager.setDesignConverter(Lnet/sf/jasperreports/engine/component/ComponentDesignConverter;)V
	at net.sf.jasperreports.components.ComponentsExtensionsRegistryFactory.<clinit>(ComponentsExtensionsRegistryFactory.java:111)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:247)
	at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:161)
	at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:119)
	at net.sf.jasperreports.engine.util.ClassUtils.instantiateClass(ClassUtils.java:57)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.instantiateRegistry(DefaultExtensionsRegistry.java:211)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:188)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:141)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getRegistries(DefaultExtensionsRegistry.java:127)
	at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:104)
	at net.sf.jasperreports.engine.util.JRStyledTextParser.<clinit>(JRStyledTextParser.java:81)
	at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:175)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:77)
	at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:59)
	at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:147)
	at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:83)
	at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601)
	at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:492)
	at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:448)
	at kartodromo.RelatorioProdutos.geraRelatorio(RelatorioProdutos.java:48)
	at kartodromo.RelatorioProdutos.main(RelatorioProdutos.java:61)
Java Result: 1

4 Respostas

mfidelis

cara, meu problema é o mesmo que o seu…
meu relatorio ta prontinho, pena que eu nao consiga visualiza -lo pea minha app

mfidelis

Boa Madruga .:KiKo:.
Andei pesquisando e encontrei um Topico no proprio GUJ sobre o Jasper…
Da uma olhada…

http://www.guj.com.br/content/articles/reports/JasperReportsIReport.pdf

Espero ter Ajudado…

Kiko1

Boa noite mfidelis;

entao cara usei esse tutorial, e msm assim não funcionou…você poderia postar seu código pra mim dar uma olhada

obrigado desde já

mfidelis

KiKo, bom dia…
O Tutorial que eu te passei (e que eu tentei usar) é bem simples msm…comigo nao deu certo tbm(vi depois que olhei seu post)…acho que tem que declarar as variaveis do Classpath setando os arquivos do .jasper…tbm estava tentando usar o relatorio em minha app, mas infelismente nao ta funfando…
Se eu encontrar a soluçao eu posto o codigo pra ti…

Criado 1 de novembro de 2011
Ultima resposta 3 de nov. de 2011
Respostas 4
Participantes 2