- Beranda
- Programmer Forum
[ASK] parameter jasper report...
...


TS
galuh1987
[ASK] parameter jasper report...
master-master java.... tolongin ane dong...
ada masalah nih,.....
saya membuat method tampilreport dibawah ini :
method itu digunakan unk mencetak jasper report dengan namareport dan parameter yang dimasukkan dalam variable input method itu.
berikut adalah JRXMLnya... JRXML ini adalah tampilan master yang mengandung 2 subreport.
JRXML itu kalo di coba lewat iReport bisa jalan dengan sempurna dan tampilan yang saya inginkan muncul..
tapi ketika JRXML itu dibaca lewat method java kayak gini :
malah error, dan errornya kayak gini....
kira-kira apa yang salah yaaa.... bingung

saya membuat method tampilreport dibawah ini :
Spoiler for Java Method :
Code:
public TampilReport(String namaReport, int idProses) {
HashMap<String, Object> parameters = new HashMap<>();
parameters.put("ID_PROSES", idProses);
try {
JasperDesign jasDesign = JRXmlLoader.load(namaReport);
JasperReport jasReport = JasperCompileManager.compileReport(jasDesign);
System.out.println("sukses");
JasperPrint jasPrint = JasperFillManager.fillReport
(jasReport, parameters, k.getKoneksi());
if (jasPrint.getPages().isEmpty()==true) {
JOptionPane.showMessageDialog(null, "Laporan ini tidak memiliki data", "InfoBox: " + "Informasi", JOptionPane.INFORMATION_MESSAGE);
} else {
JasperViewer.viewReport(jasPrint,false);
}
} catch (JRException | HeadlessException ex) {
JOptionPane.showMessageDialog(null, "Gagal Menggenerate Laporan", "InfoBox: " + "Peringatan", JOptionPane.INFORMATION_MESSAGE);
System.out.println(ex);
}
}
method itu digunakan unk mencetak jasper report dengan namareport dan parameter yang dimasukkan dalam variable input method itu.
berikut adalah JRXMLnya... JRXML ini adalah tampilan master yang mengandung 2 subreport.
Spoiler for JRXML master report:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport >
<property name="ireport.zoom" value="1.0"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<parameter name="ID_PROSES" class="java.lang.Integer">
<defaultValueExpression><![CDATA[]]></defaultValueExpression>
</parameter>
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["C:\\Users\\rodiyansyah\\Documents\\NetBeansProjects\\KMeansClustering\\src\\report"]]></defaultValueExpression>
</parameter>
<queryString>
<![CDATA[select * from prosesclustering
where idProsesClustering = $P{ID_PROSES}]]>
</queryString>
<field name="idProsesClustering" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="tanggal" class="java.sql.Date">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="jam" class="java.sql.Time">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="deskripsi" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="jmlCluster" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="maxIte" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="durasi" class="java.lang.String">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<field name="jmlIterasi" class="java.lang.Integer">
<fieldDescription><![CDATA[]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="34" splitType="Stretch"/>
</title>
<detail>
<band height="381">
<staticText>
<reportElement x="4" y="4" width="100" height="20" uuid="37ab2396-dee6-4cbf-bd9b-1f2a2758ccec"/>
<text><![CDATA[tanggal]]></text>
</staticText>
<textField>
<reportElement x="104" y="4" width="100" height="20" uuid="49313f58-b255-48c4-8848-943e28d9ff29"/>
<textFieldExpression><![CDATA[$F{tanggal}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="5" y="24" width="100" height="20" uuid="7bed3e02-e3c8-4fc1-a0c1-23aec9941f22"/>
<text><![CDATA[jam]]></text>
</staticText>
<textField>
<reportElement x="105" y="24" width="100" height="20" uuid="52e5b2aa-903f-4627-ab7d-ee17caa114d3"/>
<textFieldExpression><![CDATA[$F{jam}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="5" y="44" width="100" height="20" uuid="4a48cab5-5c28-4917-9c4c-bbe67221e822"/>
<text><![CDATA[deskripsi]]></text>
</staticText>
<textField>
<reportElement x="105" y="44" width="405" height="20" uuid="f1d24824-bfb6-4fac-b65e-c29bf625f7cd"/>
<textFieldExpression><![CDATA[$F{deskripsi}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="556" y="4" width="100" height="20" uuid="d6da64f6-3808-4068-a01e-14d03f7da808"/>
<text><![CDATA[jmlCluster]]></text>
</staticText>
<textField>
<reportElement x="656" y="4" width="100" height="20" uuid="93620e11-a6c1-414a-8dfc-b3811ec46300"/>
<textFieldExpression><![CDATA[$F{jmlCluster}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="557" y="24" width="100" height="20" uuid="47ddd8a2-e3a2-434d-8438-9ad3bfd6d64a"/>
<text><![CDATA[maxIte]]></text>
</staticText>
<textField>
<reportElement x="657" y="24" width="100" height="20" uuid="690a1951-e99a-477e-83b9-37666080f591"/>
<textFieldExpression><![CDATA[$F{maxIte}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="557" y="43" width="100" height="20" uuid="f34c71d9-0aab-4d83-91f4-22229ce0c498"/>
<text><![CDATA[durasi]]></text>
</staticText>
<textField>
<reportElement x="657" y="43" width="100" height="20" uuid="35f61bfc-9a10-4ec3-b091-d266870e4c30"/>
<textFieldExpression><![CDATA[$F{durasi}]]></textFieldExpression>
</textField>
<staticText>
<reportElement x="557" y="63" width="100" height="20" uuid="a9675444-1c23-4425-a167-f12022b87ab5"/>
<text><![CDATA[jmlIterasi]]></text>
</staticText>
<textField>
<reportElement x="657" y="63" width="100" height="20" uuid="cbec78ba-dbee-422e-8606-efba49ae9ee9"/>
<textFieldExpression><![CDATA[$F{jmlIterasi}]]></textFieldExpression>
</textField>
<subreport>
<reportElement x="4" y="83" width="200" height="100" uuid="078fc54a-3946-4f99-938b-ced18c451fee"/>
<subreportParameter name="ID_PROSES">
<subreportParameterExpression><![CDATA[$F{idProsesClustering}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "summaryClustering_subreport1.jasper"]]></subreportExpression>
</subreport>
<subreport>
<reportElement x="4" y="183" width="200" height="100" uuid="86f75f42-2515-4e4b-a6f1-83cfe83683b1"/>
<subreportParameter name="ID_PROSES">
<subreportParameterExpression><![CDATA[$F{idProsesClustering}]]></subreportParameterExpression>
</subreportParameter>
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "summaryClustering_subreport2.jasper"]]></subreportExpression>
</subreport>
</band>
</detail>
<pageFooter>
<band height="20" splitType="Stretch">
<textField>
<reportElement x="702" y="0" width="100" height="20" uuid="b3e1b0e7-30a1-4a7d-b232-342298f44893"/>
<textFieldExpression><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
</textField>
</band>
</pageFooter>
</jasperReport>
JRXML itu kalo di coba lewat iReport bisa jalan dengan sempurna dan tampilan yang saya inginkan muncul..
tapi ketika JRXML itu dibaca lewat method java kayak gini :
Code:
TampilReport tr = new TampilReport("./src/report/summaryClustering.jrxml",2);
malah error, dan errornya kayak gini....
Spoiler for ERROR:
Code:
Mei 07, 2015 10:28:53 PM net.sf.jasperreports.engine.fill.JRFillSubreport prepare
SEVERE: Fill 1: exception
net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new java.lang.Integer(1)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:328)
at net.sf.jasperreports.engine.fill.JRCalculator.evaluateEstimated(JRCalculator.java:601)
at net.sf.jasperreports.engine.fill.JRCalculator.estimateVariables(JRCalculator.java:200)
at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1276)
at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1250)
at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1003)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:120)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:551)
at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:393)
at net.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:728)
at net.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:58)
at net.sf.jasperreports.engine.fill.AbstractThreadSubreportRunner.run(AbstractThreadSubreportRunner.java:216)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/BytecodeInterface8
at summaryClustering_subreport1_1431008816215_973561.evaluateEstimated(calculator_summaryClustering_subreport1_1431008816215_973561:284)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:315)
... 14 more
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.runtime.BytecodeInterface8
at java.lang.ClassLoader.findClass(ClassLoader.java:530)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 16 more
Exception in thread "main" net.sf.jasperreports.engine.JRRuntimeException: net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new java.lang.Integer(1)
at net.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:872)
at net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:330)
at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:382)
at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:357)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2031)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:755)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:262)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:122)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:551)
at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:393)
at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:91)
at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:456)
at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:863)
at konfigurasi.TampilReport.<init>(TampilReport.java:71)
at report.Test.main(Test.java:16)
Caused by: net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: new java.lang.Integer(1)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:328)
at net.sf.jasperreports.engine.fill.JRCalculator.evaluateEstimated(JRCalculator.java:601)
at net.sf.jasperreports.engine.fill.JRCalculator.estimateVariables(JRCalculator.java:200)
at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1276)
at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1250)
at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1003)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:120)
at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:551)
at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:393)
at net.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:728)
at net.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:58)
at net.sf.jasperreports.engine.fill.AbstractThreadSubreportRunner.run(AbstractThreadSubreportRunner.java:216)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/BytecodeInterface8
at summaryClustering_subreport1_1431008816215_973561.evaluateEstimated(calculator_summaryClustering_subreport1_1431008816215_973561:284)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:315)
... 14 more
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.runtime.BytecodeInterface8
at java.lang.ClassLoader.findClass(ClassLoader.java:530)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 16 more
Java Result: 1
BUILD SUCCESSFUL (total time: 4 seconds)
kira-kira apa yang salah yaaa.... bingung

Diubah oleh galuh1987 07-05-2015 15:45
0
1.3K
Kutip
2
Balasan


Komentar yang asik ya
Mari bergabung, dapatkan informasi dan teman baru!

Programmer Forum
20.2KThread•4.8KAnggota
Urutkan
Terlama


Komentar yang asik ya