Hallo,
könnten Sie mir bitte bei der Implementierung eines iReportsbericht (in Format test.jrxml oder kompilierte Version test.jasper) in einem Webanwendung helfen?
Meine Idee ist folgendes:
ich habe mir mit iReport 4.0.2 einen Bericht erstellt und diese in iReport ausgeführt. Nach der Ausführung erstellt iReport automatisch zu dem test.jrxml eine test.jasper-Datei.
Ich möchte nun diese Dateien in meinem Webanwendung implementieren! Die Webanwendung habe ich mit Servlet und JSP erstellt!
der Report holt sich die Daten von einem mysql-DB.
Ich möchte nun in meinem Servlet-Klasse eine methode schreiben, welche die JasperReports in Contentbereich meiner Webseite in html und pdf darstellen soll.
die Methode ist wie folgendes aufgebaut: leider gibt Fehlermeldung.
die Fehlermeldung:
bitte um Hilfee!
LG. astare
könnten Sie mir bitte bei der Implementierung eines iReportsbericht (in Format test.jrxml oder kompilierte Version test.jasper) in einem Webanwendung helfen?
Meine Idee ist folgendes:
ich habe mir mit iReport 4.0.2 einen Bericht erstellt und diese in iReport ausgeführt. Nach der Ausführung erstellt iReport automatisch zu dem test.jrxml eine test.jasper-Datei.
Ich möchte nun diese Dateien in meinem Webanwendung implementieren! Die Webanwendung habe ich mit Servlet und JSP erstellt!
der Report holt sich die Daten von einem mysql-DB.
Ich möchte nun in meinem Servlet-Klasse eine methode schreiben, welche die JasperReports in Contentbereich meiner Webseite in html und pdf darstellen soll.
die Methode ist wie folgendes aufgebaut: leider gibt Fehlermeldung.
HTML:
public void Report_Generation() throws ClassNotFoundException, SQLException, JRException
{
String fileName = "C:/MY_REPORTS/AnzahlClients.jasper"; // Filename der in iReport compilierten Datei
String outFileName = "C:/MY_REPORTS/report1out.pdf"; // Filename der gewünschten outputDatei
HashMap hm = new HashMap();
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/db_nuggad";
String user = "Benutzername";
String password = "password";
Class.forName(driver);
//Connection con = DriverManager.getConnection(url,user,password);
Connection con = DriverManager.getConnection(url, "root", "");
net.sf.jasperreports.engine.JasperPrint print = net.sf.jasperreports.engine.JasperFillManager.fillReport(fileName, hm, con);
net.sf.jasperreports.engine.JRExporter exporter = new net.sf.jasperreports.engine.export.JRPdfExporter();
//net.sf.jasperreports.engine.export.JRPdfExporter exporter1 = new net.sf.jasperreports.engine.export.JRPdfExporter();
exporter.setParameter(net.sf.jasperreports.engine.JRExporterParameter.OUTPUT_FILE_NAME, outFileName);
exporter.setParameter(net.sf.jasperreports.engine.JRExporterParameter.JASPER_PRINT, print);
exporter.exportReport();
die Fehlermeldung:
Code:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Error instantiating servlet class BIPortal.Class.Users
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:662)
root cause
java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
java.lang.Class.getConstructor0(Class.java:2699)
java.lang.Class.newInstance0(Class.java:326)
java.lang.Class.newInstance(Class.java:308)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:662)
root cause
java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRException
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521)
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
java.lang.Class.getConstructor0(Class.java:2699)
java.lang.Class.newInstance0(Class.java:326)
java.lang.Class.newInstance(Class.java:308)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:563)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:399)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
java.lang.Thread.run(Thread.java:662)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.14 logs.
bitte um Hilfee!
LG. astare