last days i was trying to run jasper reports on Lift application.
Link for jasper: http://community.jaspersoft.com/project/jasperreports-library
Code for object in scala:
package code.snippet
import java.sql.Connection
import java.sql.DriverManager
import net.sf.jasperreports.engine.JasperRunManager
import net.sf.jasperreports.engine.JasperCompileManager
import net.sf.jasperreports.engine.JasperFillManager
import net.sf.jasperreports.engine.JasperPrint
import net.sf.jasperreports.engine.JasperReport
import net.sf.jasperreports.engine.design.JasperDesign
import net.sf.jasperreports.engine.xml.JRXmlLoader
import net.sf.jasperreports.view.JasperViewer
import net.sf.jasperreports.engine.JasperExportManager
object report {
def run() {
var cn: Connection = null
try {
Class.forName("org.postgresql.Driver")
cn = DriverManager.getConnection("jdbc:postgresql://localhost:5432/test","postgres","password")
} catch {
case x: Exception => x.printStackTrace()
}
try {
val dis: JasperDesign = JRXmlLoader.load("e:/reports/report1.jrxml")
val rep: JasperReport = JasperCompileManager.compileReport("e:/reports/report1.jrxml")
val imp: JasperPrint = JasperFillManager.fillReport(rep,null,cn)
cn.close();
//JasperViewer.viewReport(imp);
JasperExportManager.exportReportToHtmlFile(imp, "e://sample_report.html")
} catch{
case ex: Exception => ex.printStackTrace()
}
}
}
As you can see in code i commented JasperViewer.viewReport(imp), this open view of report in ireport viewer.
To run this from Lift app just add code: "report.run".
Brak komentarzy:
Prześlij komentarz