jug-indonesia  

Re: [JUG-Indonesia] Re: tidak bisa membaca path jasperreport?

Ifnu bima
Mon, 28 Dec 2009 02:53:09 -0800

> ntar path nya kan harus "./src/..bla..bla..bla"
>
> sedangkan klo dijadiin jar, folder src nya kan ilang..jadi gak bakalan tampil 
> alias error....:P CMIIW
>
> jd gmana nih...huhu, klo om onsir biasanya folder report taro mana klo mau 
> dibkin jar?

Bukan begitu caranya.

Km musti baca dulu resource loading. Gimana caranya baca file di dalam
jar. Semua file di folder src netbeans akan dimasukkan ke dalam jar.
Nah karena dimasukkan ke dalam jar jadinya nggak bisa diedit atau
ditulis. Hal ini mengharuskan km untuk meletakkan file .jasper ke
dalam src, bukan hanya jrxml

praktek ini lebih baik, karena proses kompilasi dari jrxml ke jasper
memerlukan resource. Padahal report yang sudah jadi tidak akan
dirubah2 dalam runtime. Jadi jauh lebih baik membaca file .jasper
daripada mengcompile jrxml setiap kali membuka report.

Selain itu report yang diletakkan di luar jar dalam aplikasi desktop
sangat tidak praktis dalam distribusi. kalau di aplikasi web sih ga
masalah, karena filenya tidak didistribusikan ke client.

Cara baca file jasper yang ada di dalam jar :

InputStream is = String.getClass().getResourceAsStream("/report.jasper");
JasperPrint  print =  JasperFillManager.fillReport(is,new
HashMap(),new JREmptyDataSource());

JREmptyDataSource => diganti dengan datasource yang sesuai.

Biasanya prose compile jrxml ke jasper dilakukan oleh iReport, jadi
setiap kali edit report di iReport pilih menu build->compile kemudian
copy-paste file .jasper ke dalam src. Saya punya script ant yang
diletakkan di build.xml-nya netbeans agar setiap kalai clean-build
project maka jasper melihat folder src, mencari file jrxml dan
mencompilenya jika ada perubahan. Lebih praktis dibanding harus copy
paste file jasper hasil compile iReport

Sayangnya saya ga bawa sciptnya, nanti saya buatin blognya deh ;)


--


http://ifnu.artivisi.com
+62 856 9211 8687
regards