Ir ao conteúdo
  • Cadastre-se

Problema em ligar relatorio Jaspersoft Studio com java


Posts recomendados

Todo mundo já deve saber que o iReport foi substituído por a ferramenta JasperSoft Studio e esse é meu problema , fiz o relatório na ferramenta mas não consigo chamar no meu projeto no netBeans então que biblioteca usar(criar)para ligar, e como fazer para chamar esse relatório na aplicação? agradeço a ajuda de quem se disponibilizar!


obs: salvei os relatórios dentro da pasta do projeto


Link para o comentário
Compartilhar em outros sites

Então, utilizei o maven para resolver as dependências.... Nesse caso só precisei declarar do jaspersoft...E o resto é automático, muito útil.

Para o relatório, criei um relatório qualquer utilizando o template e base de exemplo que vinha junto com o jaspersoft studio.

Dei um build, que gerou o relatório .jasper compilado.

Criei um projeto java qualquer no eclipse e colei o código exemplo do post anterior, mundando apenas o diretório do em que está o arquivo jasper compilado.

Link para o comentário
Compartilhar em outros sites

consegui gerar o .jasper e peguei o código do link acima mas ainda não consegui e ta dando erro numa linha segue o codigo abaixo
 
obs: meus relatorios estão no pacote "Relatorios"
 
        Connection connection = null;
try {
 
String reporta = "Relatorios";//"myreport";
Map<String, Object> parameters = new HashMap<String, Object>();
connection = new ConnectionFactory().getConnection(); // ERRO NESSA LINHA
 
// compiles jrxml
JasperCompileManager.compileReportToFile(reporta + "Relatorios/Relatorioturma.jrxml");
// fills compiled report with parameters and a connection
JasperPrint print = JasperFillManager.fillReport(reporta + "Relatorios/Relatorioturma.jasper", parameters, connection);
// exports report to pdf
JRExporter exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, new FileOutputStream(reporta + "relatoriozinho.pdf")); // your output goes here
 
exporter.exportReport();
 
} catch (Exception e) {
// throw new RuntimeException("It's not possible to generate the pdf report.", e);
                    JOptionPane.showMessageDialog(rootPane,"erro ao chamar relatorio\n"+ e);
} finally {
// it's your responsibility to close the connection, don't forget it!
if (connection != null) {
try { connection.close(); } catch (Exception e) {}
}
}

Link para o comentário
Compartilhar em outros sites

Só precisa preencher com os dados para conectar na base.

Testei e gerou PDF.

Testei com SQL Server

Connection connection = null;     try {           String reporta = "Relatorios";//"myreport";     Map<String, Object> parameters = new HashMap<String, Object>();          Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");     connection =DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=Teste","teste","123123");                // compiles jrxml     JasperCompileManager.compileReportToFile(reporta + "Relatorios/Relatorioturma.jrxml");     // fills compiled report with parameters and a connection     JasperPrint print = JasperFillManager.fillReport(reporta + "Relatorios/Relatorioturma.jasper", parameters, connection);     // exports report to pdf     JRExporter exporter = new JRPdfExporter();     exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);     exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, new FileOutputStream(reporta + "relatoriozinho.pdf")); // your output goes here           exporter.exportReport();           } catch (Exception e) {     e.printStackTrace();     } finally {     // it's your responsibility to close the connection, don't forget it!     if (connection != null) {     try { connection.close(); } catch (Exception e) {}     }     }
Link para o comentário
Compartilhar em outros sites

primeiramente agradeço de coração sua ajuda....

uso postgreeSql e deu certo a conexão e tudo mas o problema é no caminho do relatorio em comentario tem algumas duvidas no codigo

 

    public void ChamandoTurma() {
 
        Connection connection = null;
        try {
 
            String reporta = "Relatorios";// não consigo entender essa linha onde uso isso aqui?
            Map<String, Object> parameters = new HashMap<String, Object>();
 
            Class.forName("org.postgresql.Driver");
 
//     Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//     connection =DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=Teste","teste","123123");
            connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/sisgae", "postgres", "senha");            
            
            
            // compiles jrxml
            JasperCompileManager.compileReportToFile(reporta + "Relat/RelatorioTurmas.jrxml");//erro aqui ele não consegue achar o relatorio
                                                                                              //mas to passando certinho como:
                                                                                              //pacote/relatorio
          
            // fills compiled report with parameters and a connection
            JasperPrint print = JasperFillManager.fillReport(reporta + "Relat/RelatorioTurmas.jasper", parameters, connection);
            // exports report to pdf
            JRExporter exporter = new JRPdfExporter();
            exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
            exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, new FileOutputStream(reporta + "relatoriozinho.pdf")); // your output goes here
 
            exporter.exportReport();
 
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            // it's your responsibility to close the connection, don't forget it!
            if (connection != null) {
                try {
                    connection.close();
                } catch (Exception e) {
                }
            }
        }
 
    }
 
Link para o comentário
Compartilhar em outros sites

Acho que removeu apenas da declaração,tenta apagar de onde o variável estiver sendo utilizada.

 public void ChamandoTurma() {         Connection connection = null;        try {                         Map<String, Object> parameters = new HashMap<String, Object>();             Class.forName("org.postgresql.Driver"); //     Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");//     connection =DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=Teste","teste","123123");            connection = DriverManager.getConnection("jdbc:postgresql://localhost:5432/sisgae", "postgres", "senha");                                                // compiles jrxml            JasperCompileManager.compileReportToFile( "Relat/RelatorioTurmas.jrxml");//erro aqui ele não consegue achar o relatorio                                                                                              //mas to passando certinho como:                                                                                              //pacote/relatorio                      // fills compiled report with parameters and a connection            JasperPrint print = JasperFillManager.fillReport("Relat/RelatorioTurmas.jasper", parameters, connection);            // exports report to pdf            JRExporter exporter = new JRPdfExporter();            exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);            exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, new FileOutputStream( "relatoriozinho.pdf")); // your output goes here             exporter.exportReport();         } catch (Exception e) {            e.printStackTrace();        } finally {            // it's your responsibility to close the connection, don't forget it!            if (connection != null) {                try {                    connection.close();                } catch (Exception e) {                }            }        }     }
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...