“shif+f6”= é uma combinação de teclas que executa a aplicação.
Quando executo a aplicação dentro do netbeans, e acesso o menu de relatórios, estes são exibidos normalmente.
Porém quando crio o executável, e acesso o menu dos relatórios não é exibido nenhum deles.
Os relatórios (arquivo .jasper) estão dentro da pasta “src/relatorios/”
Classe relatório:
package relatorios;
import java.sql.SQLException;
import java.util.HashMap;
import javax.swing.JOptionPane;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import utilitarios.conexao;
public class relCompleto{
conexao con = new conexao();
public relCompleto(){
try{
con.conecta();
con.executaSQL("Select * from contatos");
JRResultSetDataSource jrs= new JRResultSetDataSource(con.resultset);
JasperPrint jsprint=JasperFillManager.fillReport("src/relatorios/rel_completo.jasper",new HashMap(),jrs);
JasperViewer.viewReport(jsprint,false);
}
catch (Exception erro){
JOptionPane.showMessageDialog(null,"Erro ao criar relatório!\n"+erro);
}
}
public static void main(String args[]){
new relCompleto();
}
}
Instrução para exibir o relatório ja na tela principal da aplicação:
private void mnitm_rel_completoActionPerformed(java.awt.event.ActionEvent evt) {
new relatorios.relCompleto();
}
Repetindo… gerei o executável do meu projeto, porém os relatórios não são exibidos.
Acredito que deve estar relacionado com o caminho até os arquivos .jasper, mas não sei como isto poderia ser solucionado.
Acabei de fazer um teste que li em alguns blogs, onde diziam que a pasta que contém os .jasper deveria ser copiada para dentro da pasta lib depois que o projeto fosse compilado e gerado o executável, mas também não resolveu meu problema.