Sebelum bisa cara ini, saya biasanya memasukkan seluruh SQL ke dalam JRXML, tapi beberapa minggu belakangan ini, di milis JUGI banyak yang membahas tentang bagaimana caranya membuat report menggunakan DataSource di JasperReport, setelah mencari tutorial di bantu oleh teman belajar saya, akhirnya bisa juga :), yah menurut saya lebih gampang dan enak menggunakan datasource, karena jika ada perubahan dalam SQL/HQL, kita hanya perlu mengubahnya di file “*.java* yang bersangkutan.
Saya bingung juga cara menjelaskan yang benar itu seperti apa :), karena saya tidak begitu paham teori nya, biasanya kalo ada hal baru langsung tabrak-tabrak aja, hehe..yang penting bisa dan ngerti prakteknya, langsung aja step by step nya :
Contoh simple nya aja, Misalnya kita ingin menampilkan info Anggota dalam program Sistem Informasi Perpustakaan, lalu kita membuat class tb_anggota.java :
Tb_anggota.java
Sekarang buka file JRXML yang sudah kamu design lewat Ireport, kurang lebih isinya seperti ini :
<field name="kd_anggota" class="java.util.String"/>
<field name="nm_anggota" class="java.lang.String"/>
<field name="tmp_lahir" class="java.lang.String"/>
<field name="tgl_lahir" class="java.lang.Date"/>
<field name="jenkel" class="java.lang.String"/>
<field name="alamat" class="java.lang.String"/>
//design report
Atribut name dan tipe dalam JRXML harus sama dengan tipe dan nama field yang berada dalam tb_anggota.java, Setelah itu kita membuat method untuk menampung object, disini kita menggunakan List :
@SuppressWarnings("unchecked")
private List getDataSource(){
try{
List hasil = new ArrayList();
Resultset rs = koneksi.selectAll();
while(rs.next()){
tb_anggota anggota = new tb_anggota();
anggota.setKd_anggota(rs.getString("kd_anggota");
anggota.setNm_anggota(rs.getString("nm_anggota");
anggota.setTmp_lahir(rs.getString("tmp_lahir");
anggota.setTgl_lahir(rs.getDate("tgl_lahir");
anggota.setJenkel(rs.getString("jenkel");
anggota.setAlamat(rs.getString("alamat");
list.add(anggota);
}
koneksi.closeDB();
return hasil;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
Coba perhatikan baris 6, disitu kamu bisa menggantinya dengan query SQL ataupun HQL, tergantung kamu menggunakan apa, disini saya menggunakan JDBC murni, semua SQL saya taruh di class Koneksi.java, jadi sebagai contoh, pada baris ke 6 hanya perlu memanggil method selectAll(), setelah selesai semua, sekarang kita hanya perlu membuat sedikit code lagi agar bisa ditaruh di actionPerformed JButton :
//menentukan file jrmxl yang akan di compile
JasperReport jasperReport = null;
try {
jasperReport = JasperCompileManager.
compileReport("./src/perpustakaan/report/TagihanBuku.jrxml");
} catch (JRException e1) {
e1.printStackTrace();
}
//compile file .jrmxl ke .jasper
try {
JasperCompileManager.compileReportToFile("./src/perpustakaan/report/TagihanBuku.jrxml",
"./src/perpustakaan/report/TagihanBuku.jasper");
} catch (JRException e1) {
e1.printStackTrace();
}
//mengisi dan menampilkan report
JasperPrint jasperPrint = null;
try {
jasperPrint = JasperFillManager.fillReport(jasperReport,
new HashMap(), new JRBeanCollectionDataSource(getDataSource()));
JasperViewer.viewReport(jasperPrint);
} catch (JRException e1) {
e1.printStackTrace();
}
Taruh code diatas pada aksi JButton, jadi ketika tombol ditekan, laporan akan keluar :), ketika saya menulis artikel ini, rada bingung juga, coz ada beberapa code yang saya rubah, sepertinya ada yang salah, hehehe…tapi seenggaknya kamu punya bayangan kan bagaimana menampilkan report menggunakan datasource di java , jika ada kesalahan, kritik dan saran, silahkan tulis comment dibawah, terima kasih :)



42 comments
achmatim
19/12/2009 at 21:39 (UTC 7)
sip, mantab deh kus.semakin banyak nulis nanti kan akan terasah ilmunya. tetep semangat!
.-= achmatim´s last blog ..10 Hal yang Tidak Boleh Dilakukan terhadap Adsense =-.
Kus Andriadi :
amin..makasih pak..^.^
[Reply]
Farham
19/12/2009 at 22:37 (UTC 7)
keren, keren, keren
Kus Andriadi :
^.^
[Reply]
doez
29/01/2010 at 13:57 (UTC 7)
OK THX INFONYA
Kus Andriadi :
Sama2 kakak :)
[Reply]
Ahn
30/01/2010 at 10:52 (UTC 7)
Trims tutorialnya membantu banget….
Kus Andriadi :
iya sama2 :)
[Reply]
rental mobil murah
03/02/2010 at 15:53 (UTC 7)
okeee aza
nice blog
Kus Andriadi :
thanks…:)
[Reply]
adi wijaya
03/02/2010 at 17:43 (UTC 7)
halo mas andri genteng (*kata kunci :D)
hehe…
ini mas, sy udh cb sesuai dengan sample punya mas andri, tp sy baru buat yg ga terkoneksi database, muncul error :
java.lang.NullPointerException net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:138) net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:119) net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:420) org.apache.jsp.LoadReport_jsp._jspService(LoadReport_jsp.java:108) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
berikut code sy:
itu kira2 kenapa ya mas? karena sy udh cb dengan sample yg ada disite yg laen jg muncul error kurang lebih sama.
mohon pencerahannya.. :D
nuwun
@d13
Kus Andriadi :
mana codenya…zzz….
tapi kayaknya sih salah direktori waktu manggil jasper nya….:) coba liat lagi, bener gak direktorinya :)
[Reply]
adi wijaya
03/02/2010 at 17:45 (UTC 7)
maaf ini code nya :
JasperReport jasperReport = null;
try {
jasperReport = JasperCompileManager.compileReport(“d:/SampleReportJasper/sampleReport5.jrxml”);
}
catch (JRException e1) {
e1.printStackTrace();
}
//compile file .jrmxl ke .jasper
try {
JasperCompileManager.compileReportToFile(“d:/SampleReportJasper/sampleReport5.jrxml”,”d:/SampleReportJasper/sampleReport5.jasper”);
}
catch (JRException e1) {
e1.printStackTrace();
}
//mengisi dan menampilkan report
JasperPrint jasperPrint = null;
try {
jasperPrint = JasperFillManager.fillReport(jasperReport,null);
JasperViewer.viewReport(jasperPrint);
}
catch (JRException e1) {
e1.printStackTrace();
}
mohon pencerahannya :)
nuwun
@d13
Kus Andriadi :
lw gak pake datasource ya? yang kaya contoh gw? gw juga kurang ngerti sih coz gw gak pernah make jasperreport selain pake cara datasource….tapi karena eksepsionnya ngelempar null, kalo menurut gw ada 2 kemungkinan
1. manggil Direktori jrxml/jasper nya salah….
2. jasperPrint = JasperFillManager.fillReport(jasperReport,null);
tuh diisi null, belom ada datanya, :) jadi apa yang mau diisi? :)
menurut gw itu loh yah :)
[Reply]
ard
15/03/2010 at 08:01 (UTC 7)
kalo jasper bisa ngeprint yang dibutuhkan aja gak yah misalnya kalo gw punya member si budi
gw pengen ngeprin si budi aja itu gmn caranyanya mohon dibales yah thex…..
kirim ke email gw aja oke thx yah bro……
[Reply]
Kus Andriadi Reply:
March 15th, 2010 at 20:20
kalo itu tergantung queri sql yang ditaro di jrxml/program nya…..di clausa where…misalnya select bla bla where nama = “budi”
[Reply]
Achoel Dolie
11/08/2010 at 16:08 (UTC 7)
Gw mondar nyari source code buat JasperReport dengan DataSOurce, eeehhhh nyangkut di blognya si kus..
mantap dah tulisannya Gan!!… Laaannnjuuuuttt, pusing” gw nyari eeehhh disini nammmpoooolllll sourcecodenya.. hahahah :P
mantaaap !
[Reply]
ian
06/03/2011 at 13:02 (UTC 7)
mas kalo parameter nya cuma satu gimana ya mas? apa karena tabel databasenya berelasi sehingga parameternya dua?
[Reply]
Kus Andriadi Reply:
March 7th, 2011 at 02:15
maksudnya apa ya?
[Reply]
regas
23/03/2011 at 21:01 (UTC 7)
Ass….Slam kenal semua…sya punya problem…laporan yang dibuat pake ireport hanya tampil dari netbeans….jika project di Clean and Build trus dijalankan aplikasi.jar (yang ada dalam folder dist dari project) muncul pesan kira2 begini…ClassNotFoundException…Laporan Tidak dapat dicetak….Mohon pencerahannya….Tolong ya…..Pleasee….
ini kodenya….
void cetak() {
try {
//Lokasi File Jasper//
String nmFile=”src/report/reportbarang.jasper”;
String driver=”com.mysql.jdbc.Driver”;
String konek=”jdbc:mysql://localhost/penjualan”;
String user=”root”;
String password=”";
HashMap parameter=new HashMap();
Class.forName(driver);
Connection conn=DriverManager.getConnection(konek,user,password);
File reportFile=new File(nmFile);
JasperReport jReport= (JasperReport)JRLoader.loadObject(reportFile.getPath());
JasperPrint jPrint=JasperFillManager.fillReport(jReport, parameter,conn);
JasperViewer.viewReport(jPrint,true);
JasperViewer.setDefaultLookAndFeelDecorated(true);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, “Laporan Tidak Dapat Dicetak!\n” +
e.getMessage(),”Cetak Laporan”, JOptionPane.ERROR_MESSAGE);
}
}
[Reply]
Kus Andriadi Reply:
March 23rd, 2011 at 21:15
aturan yang di copas jangan code nya…tapi pesan error nya :D itu kalo ada pesan class not found, berarti ada jar yang belum dimasukin :D
[Reply]
regas Reply:
March 24th, 2011 at 20:52
saya sudah coba memasukkan semua library yang ada pada ireport ke netbeans….yang sya heran kalau dijalankan dari netbeans trus ditekan button cetak dengan kode cetak yang saya lampirkan di atas…laporan tampil dengan sempurna…tapi setelah project di clean dan build …trus saya jalankan projectdari folder dist (aplikasi.jar) tidak bisa…tlong ya kalau ada cara lain menmpilkan laporan dari netbeans..tolong share..
[Reply]
Kus Andriadi Reply:
March 24th, 2011 at 21:54
itu karena path waktu manggil file jasper nya beda…..coba file jasper nya taro di luar folder src…nantinya kalo di jalanin via aplikasi jar….file jasper nya juga jangan lupa ditaro diluar jar….
[Reply]
Ratno
12/07/2011 at 16:28 (UTC 7)
Alhamdulillah caraku sama, jadi ngak melenceng dunk
[Reply]
gx
07/09/2011 at 11:57 (UTC 7)
gada ni blog TA gw gakan kelar deh
[Reply]
Kus Andriadi Reply:
September 8th, 2011 at 22:57
hahaha thanks :D
[Reply]
eko
02/11/2011 at 20:51 (UTC 7)
maap nih mau tanya gmn cara buat ireport pada Jcreator dan cara menapilkan nya… sekian terima kasih jawaban kirim email saya
[Reply]
Kus Andriadi Reply:
November 3rd, 2011 at 19:16
sama aja dengan cara diatas…
[Reply]
ilm
11/11/2011 at 11:54 (UTC 7)
permisi mas mau tny, ni sy sdang bikin program yg ada di buku. semua sudah selesai. program jg sudah jalan. tapi tombol utk ngeklik laporannya gag fungsi, pdhl sudah di setting jg
utk menu utama:
private static void printReport(JRBeanCollectionDataSource vData, String vReport) {
String dirrTemplate=”";
String dirrResult=”";
try {
File dir1=new File(“.”);
dirrTemplate=dir1.getCanonicalPath()+”\\report\\template\\”;
dirrResult=dir1.getCanonicalPath()+”\\report\\result\\”;
Map parameters=new HashMap();
JasperFillManager.fillReportToFile(dirrTemplate+vReport+”.jasper”,
dirrResult+vReport+”.jrprint”,parameters,vData);
File sourceFile=new File(dirrResult+vReport+”.jrprint”);
JasperPrint jasperPrint=(JasperPrint)JRLoader.loadObject(sourceFile);
JasperViewer.viewReport(jasperPrint,false);
} catch (JRException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
utk button:
private void lapDaftarAdminActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
AdminFactory.setConnection(MyApp.getApp().getConnection());
JRBeanCollectionDataSource dt=new JRBeanCollectionDataSource(AdminFactory.getRecord());
printReport(dt, “Admin”);
}
nah utk datanya, sy simpan di 2 file: AdminBean.java & AdminFactory.java ,gmn ya biar laporanny mau loading?
trims
[Reply]
Kus Andriadi Reply:
November 13th, 2011 at 21:16
pesan error nya apa?
[Reply]
eko
16/12/2011 at 20:20 (UTC 7)
maap ni saya punya problem…. saya pke jcreator ga da yang eror tp ga muncul ya jasper nya ini kode source nya…
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author Administrator
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Map;
import java.util.HashMap;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.JasperViewer;
public class FormCtk extends JInternalFrame implements ActionListener{
static Connection lConnection ;
private String ReportPath = “report/”;
private JPanel jpFormCtk = new JPanel();
private JButton btnAdd = new JButton();
FormCtk(){
super (“Form Report Pegawai”, false, true, false, true);
setSize(560,360);
jpFormCtk.setLayout(null);
btnAdd.setBounds (400,175,85,25);
btnAdd.setLabel(“Add”);
btnAdd.setEnabled(true);
btnAdd.addActionListener(this);
jpFormCtk.add(btnAdd);
getContentPane().add(jpFormCtk);
setVisible(true);
lConnection = InitConnection();
}
public void actionPerformed (ActionEvent ae){
Object obj = ae.getSource();
if(obj == btnAdd){
}
}
void Add(){
buildReport(“DaftarPegawai”);
}
private static Connection InitConnection(){
String user =”root”;
String pwd = “”;
String host = “localhost”;
String db = “dbpenggajian”;
String urlValue = “”;
Connection koneksi= null;
try{
urlValue = “jdbc:mysql://”+ host + “/” + db + “?user=” + user +”&password=”+pwd;
koneksi = DriverManager.getConnection(urlValue);
}
catch (Exception e){
System.out.println(e);
}
return koneksi;
}
private void buildReport (String vName){
String reportSource;
String reportDest;
reportSource = ReportPath + “templates/” + vName +”.jrxml”;
reportDest = ReportPath + “results/” + vName + “.html”;
try{
JasperReport jasperReport =JasperCompileManager.compileReport(reportSource);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, lConnection);
JasperExportManager.exportReportToHtmlFile(jasperPrint,reportDest);
JasperViewer.viewReport(jasperPrint,false);
}
catch(JRException ex){
ex.printStackTrace();
}
}
}
mohon petunjuk yah saya pke jasper report-2.0.5
saya mau tanya: cara menghubungkan jcreator dengan jasper gmna.. maksih,,,
[Reply]
Kus Andriadi Reply:
December 16th, 2011 at 21:24
pesan error nya mana?
[Reply]
eko
16/12/2011 at 23:22 (UTC 7)
kan saya dah tulis ga da yang eror tp waktu saya klik button add jasper report nya ga muncul jadi kira-kira pa yang kurang….
[Reply]
Kus Andriadi Reply:
December 20th, 2011 at 13:06
action di button nya udah dibikin belum? kalo udah seharusnya ada pesan errornya
[Reply]
eko
25/12/2011 at 16:27 (UTC 7)
distu dah komplit smua bro… dari action method button kan ada masa ga tau….
[Reply]
Kus Andriadi Reply:
December 26th, 2011 at 12:55
coba liat di action performed, kalo button add keteken, dia bakal ngelakukan..itu kayaknya gak ada action apa2…
apa gue yang salah liat :D
[Reply]
gi3
28/12/2011 at 06:20 (UTC 7)
Tx sebelumnya Mas
saya udah coba jalanin programnya< dan memiliki sedikit kendala
pada class private List getDataSource()
anggota.setKd_anggota(rs.getString("kd_anggota");
lha anggota.setKD_anggota itu apa?
pessan error:
cannot find symbol
symbol : method setKD_Anggota (java.lang.String)
mohon pencerahannya
Makasih sebelumnya,,,
[Reply]
gi3
28/12/2011 at 06:34 (UTC 7)
Tenyata code untuk tb_anggota.java dan file JRXML di atas belum lengkap yah mas???
mohon versi lengkapnya mas,,,
lagi butuh banget neh buat tugas
skali lagi terimakasih
[Reply]
Kus Andriadi Reply:
December 28th, 2011 at 17:40
tb_anggota.java itu isinya cuma getter setter aja mas :)
jrxml nya juga cuma bagian tersebut yang diubah,
[Reply]
eko
28/12/2011 at 11:16 (UTC 7)
void Add(){
buildReport(“DaftarPegawai”);
}
private void buildReport (String vName){
String reportSource;
String reportDest;
reportSource = ReportPath + “templates/” + vName +”.jrxml”;
reportDest = ReportPath + “results/” + vName + “.html”;
try{
JasperReport jasperReport =JasperCompileManager.compileReport(reportSource);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, lConnection);
JasperExportManager.exportReportToHtmlFile(jasperPrint,reportDest);
JasperViewer.viewReport(jasperPrint,false);
}
catch(JRException ex){
ex.printStackTrace();
}
}
}
ini bukan termasuk action ya…?
[Reply]
Kus Andriadi Reply:
December 28th, 2011 at 17:43
if(obj == btnAdd){
}
itu kosong kan?? jadi kalo buttonnya dipencet, gak ngapa2in kan?
[Reply]
gi3
29/12/2011 at 05:07 (UTC 7)
Hehehe,,,
saya masih baru dalam dunia java mas
jadi belum tau gmn itu getter / setter =,=’a
mohon script lengkapnya :)
skali lagi terimakasih sebelumnya
[Reply]
Kus Andriadi Reply:
December 31st, 2011 at 21:25
coba liat ini mas contohnya :D
http://avriqzramadhan.wordpress.com/2011/02/17/method-setter-dan-getter/
[Reply]
ari
02/01/2012 at 22:27 (UTC 7)
mas mau tanya nih aku punya class buat manggil jasper tapi waktu aku jadiin jar ko ga tampil yah kadang action nya ga aktif tolong donk kasih tau gmana biar mulus…. Nih code nya :
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Map;
import java.util.HashMap;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.JasperViewer;
import java.io.FileInputStream;
import java.io.BufferedInputStream;
public class FormLogin extends JFrame{
private JPanel jPanel1 = new JPanel();
private JButton blogin = new JButton();
private JButton bkeluar = new JButton();
private JTextField txtNama;
public Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
private int w,h,x,y;
private int L,T,LX,TY;
private static JFrame owner;
public FormLogin(JFrame owner) {
super();
jPanel1.setLayout(null);
//———————————-
txtNama = new JTextField();
txtNama.setBounds(110,20,200,25);
jPanel1.add(txtNama);
blogin.setText(“LOGIN”);
blogin.setForeground(Color.blue);
blogin.setBounds(20,150,120,25);
jPanel1.add(blogin);
bkeluar.setText(“BATAL”);
bkeluar.setForeground(Color.blue);
bkeluar.setBounds(180,150,120,25);
jPanel1.add(bkeluar);
add(jPanel1);
setTitle(“LOGIN”);
setResizable(false);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(350,250);
w = getSize().width;
h = getSize().height;
x = (dim.width-w)/2;
y = (dim.height-h)/2;
setLocation(x,y);
/*===================================
* Button Even Listener
*===================================
*/
blogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
bloginActionPerformed(evt);
}
});
bkeluar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
bkeluarActionPerformed(evt);
}
});
}
private void bloginActionPerformed(ActionEvent evt) {
if (evt.getSource() == blogin) {
try {
// parameter
String parameterNama = txtNama.getText();
//load report location
FileInputStream fis = new FileInputStream(“E:\\report\\Iseng.jrxml”);
BufferedInputStream bufferedInputStream = new BufferedInputStream(fis);
//set parameters
Map map = new HashMap();
map.put(“nama1″, parameterNama);
Class.forName(“com.mysql.jdbc.Driver”);
Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/test”, “root”, “”);
//compile report
JasperReport jasperReport = (JasperReport) JasperCompileManager.compileReport(bufferedInputStream);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, connection);
//close connection
connection.close();
//view report to UI
JasperViewer.viewReport(jasperPrint, true);
} catch (Exception ex) {
// logger.error(ex.getMessage(), ex);
}
}
}
private void bkeluarActionPerformed(ActionEvent evt) {
System.exit(0);
}
public static void main(String args[]) {
FormLogin tb = new FormLogin(owner);
tb.setVisible(true);
}
}
[Reply]
ari
02/01/2012 at 22:32 (UTC 7)
mas bro maap nih ganggu saya mau tanya ko saya bikin jar ko action nya ga muncul yah pada hal dah di coba bisa tolong dnk kasih tau biar MULUS….
ini code nya…
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Map;
import java.util.HashMap;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.JasperViewer;
import java.io.FileInputStream;
import java.io.BufferedInputStream;
public class FormLogin extends JFrame{
private JPanel jPanel1 = new JPanel();
private JButton blogin = new JButton();
private JButton bkeluar = new JButton();
private JTextField txtNama;
public Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
private int w,h,x,y;
private int L,T,LX,TY;
private static JFrame owner;
public FormLogin(JFrame owner) {
super();
jPanel1.setLayout(null);
//———————————-
txtNama = new JTextField();
txtNama.setBounds(110,20,200,25);
jPanel1.add(txtNama);
blogin.setText(“LOGIN”);
blogin.setForeground(Color.blue);
blogin.setBounds(20,150,120,25);
jPanel1.add(blogin);
bkeluar.setText(“BATAL”);
bkeluar.setForeground(Color.blue);
bkeluar.setBounds(180,150,120,25);
jPanel1.add(bkeluar);
add(jPanel1);
setTitle(“LOGIN”);
setResizable(false);
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(350,250);
w = getSize().width;
h = getSize().height;
x = (dim.width-w)/2;
y = (dim.height-h)/2;
setLocation(x,y);
/*===================================
* Button Even Listener
*===================================
*/
blogin.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
bloginActionPerformed(evt);
}
});
bkeluar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
bkeluarActionPerformed(evt);
}
});
}
private void bloginActionPerformed(ActionEvent evt) {
if (evt.getSource() == blogin) {
try {
// parameter
String parameterNama = txtNama.getText();
//load report location
FileInputStream fis = new FileInputStream(“E:\\report\\Iseng.jrxml”);
BufferedInputStream bufferedInputStream = new BufferedInputStream(fis);
//set parameters
Map map = new HashMap();
map.put(“nama1″, parameterNama);
Class.forName(“com.mysql.jdbc.Driver”);
Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/test”, “root”, “”);
//compile report
JasperReport jasperReport = (JasperReport) JasperCompileManager.compileReport(bufferedInputStream);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, connection);
//close connection
connection.close();
//view report to UI
JasperViewer.viewReport(jasperPrint, true);
} catch (Exception ex) {
// logger.error(ex.getMessage(), ex);
}
}
}
private void bkeluarActionPerformed(ActionEvent evt) {
System.exit(0);
}
public static void main(String args[]) {
FormLogin tb = new FormLogin(owner);
tb.setVisible(true);
}
}
mohon di coba ya mungkin ada yang kurang… trima kasih….
[Reply]
Kus Andriadi Reply:
January 3rd, 2012 at 09:26
sebelum dibikin jar jalan gak?
kalo jalan ya salah pas di path mau ngeload report nya….
kalo dijadiin jar emang suka gitu, caranya agak beda…
[Reply]
ari
07/01/2012 at 20:45 (UTC 7)
mas mau tanya nih bikin jasper report tapi ga meload dari database… jadi dari textarea dan textfield yang ga saya save ke data base… ??? contohnya kaya nota pembayaran kasir.. tau kan mas … tolong donk… makasih…
[Reply]
Heni
10/01/2012 at 18:07 (UTC 7)
saya mau tanya,
kalo pesan error nya :
java.lang.NullPointerException itu kenapa ya?
[Reply]
Kus Andriadi Reply:
January 10th, 2012 at 20:22
ada object yang belum di inisialisasi….:)
[Reply]