iReport tidak berfungsi pada mode JAR
Inti Permasalahan
try{ String namaFile ="src/Laporan/reportco.jasper"; HashMap parameter = new HashMap(); File report_file = new File (namaFile); JasperReport jasperReport = (JasperReport) JRLoader.loadObject(report_file); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameter,con); JasperViewer.viewReport(jasperPrint,false); JasperViewer.setDefaultLookAndFeelDecorated(true);}catch (JRException e){ JOptionPane.showMessageDialog(null, e.getMessage());}Kode di atas adalah kode standar untuk memanggil iReport di Java Netbeans, ada banyak situs tutorial yang menyarankan kode itu. Namun, ada kesalahan yang menurut saya paling fatal di bagian File report_file = new File (filename);.
Ketika aplikasi dijalankan melalui Netbeans, skrip panggilan berfungsi dengan baik. Namun ketika aplikasi anda sudah diexectuble menjadi file Jar, script tersebut tidak berfungsi sama sekali dan muncul pesan error java.io.FileNotFoundException yang berarti file jasper Anda tidak ditemukan.

Troubleshooting
Untuk mengatasi masalah ini Anda harus mengganti bagian fatal sebagai berikut.
try{ // String namaFile ="src/Laporan/reportco.jasper"; HashMap parameter = new HashMap(); // File report_file = new File (namaFile); InputStream report_file = getClass().getResourceAsStream("/src/Laporan/reportco.jasper"); JasperReport jasperReport = (JasperReport) JRLoader.loadObject(report_file); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameter,con); JasperViewer.viewReport(jasperPrint,false); JasperViewer.setDefaultLookAndFeelDecorated(true);}catch (JRException e){ JOptionPane.showMessageDialog(null, e.getMessage());}