【问题标题】:jasper report through jsp [duplicate]jasper通过jsp报告[重复]
【发布时间】:2016-09-18 21:51:56
【问题描述】:

以下是我的代码。我希望它将已经制作的 jrxmlFile 显示为 pdf,但是我得到了一个 execption

Connection con = null;

try {
    Class.forName("org.apache.derby.jdbc.ClientDriver");

    con = DriverManager.getConnection("jdbc:derby://localhost:1527/WPSJSP", "athif", "athif");//dbpassword

    String jrxmlFile = "E:/web/BirthdayPie.jrxml";
    InputStream input = new FileInputStream(new File(jrxmlFile));

    JasperReport jasperReport = JasperCompileManager.compileReport(jrxmlFile);
    JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null, con);

    OutputStream outStream = response.getOutputStream();
    JasperExportManager.exportReportToPdfStream(jasperPrint, outStream);

    response.getOutputStream().flush();
    response.getOutputStream().close();
} catch (Exception e) {
    e.printStackTrace();
} finally {
    if (con != null) {
        con.close();
    }
}

堆栈跟踪:

SEVERE: Servlet.service() for servlet [jsp] in context with path [/WPSJSP-CB006104] threw exception [javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/joda/time/ReadablePartial] with root cause
java.lang.ClassNotFoundException: org.joda.time.ReadablePartial
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1858)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1701)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:348)
    at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForRealName(JRClassLoader.java:157)
    at net.sf.jasperreports.engine.util.JRClassLoader.loadClassForName(JRClassLoader.java:115)
    at net.sf.jasperreports.functions.FunctionsBundle.addFunctionClass(FunctionsBundle.java:83)
    at net.sf.jasperreports.functions.FunctionsBundle.<init>(FunctionsBundle.java:53)
    at net.sf.jasperreports.functions.FunctionsRegistryFactory.createRegistry(FunctionsRegistryFactory.java:73)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.instantiateRegistry(DefaultExtensionsRegistry.java:239)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:214)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.loadRegistries(DefaultExtensionsRegistry.java:162)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getRegistries(DefaultExtensionsRegistry.java:133)
    at net.sf.jasperreports.extensions.DefaultExtensionsRegistry.getExtensions(DefaultExtensionsRegistry.java:105)
    at net.sf.jasperreports.engine.DefaultJasperReportsContext.getExtensions(DefaultJasperReportsContext.java:247)
    at net.sf.jasperreports.engine.component.ComponentsEnvironment.findBundles(ComponentsEnvironment.java:124)
    at net.sf.jasperreports.engine.component.ComponentsEnvironment.getCachedBundles(ComponentsEnvironment.java:114)
    at net.sf.jasperreports.engine.component.ComponentsEnvironment.getBundles(ComponentsEnvironment.java:102)
    at net.sf.jasperreports.engine.component.ComponentsEnvironment.getComponentBundles(ComponentsEnvironment.java:184)
    at net.sf.jasperreports.engine.xml.JRReportSaxParserFactory.getSchemaLocations(JRReportSaxParserFactory.java:84)

我做了很多研究,包括this,this and this 等等。请帮忙。

【问题讨论】:

  • 请添加完整的堆栈跟踪
  • 使用完整的 Stacktrace 进行编辑。
  • 这不是完整的堆栈跟踪。查看服务器日志文件。
  • 用服务器日志文件编辑。

标签: jsp jasper-reports classnotfoundexception


【解决方案1】:

正如您在堆栈跟踪中看到的:

[javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/joda/time/ReadablePartial]

您需要将joda-time.jar 添加到您的类路径中。

【讨论】:

  • 在我添加了 joda-time.jar 之后,我得到了这个异常,但是我添加了这个 groovy-all-2.1.2-sources jar -javax.servlet.ServletException: java.lang.NoClassDefFoundError: org/ codehaus/groovy/control/CompilationFailedException
  • 您还想念其他一些 3rd-Party 罐子。在这种情况下,groovy-all.jar
  • 我也添加了那个 jar (groovy-all-2.1.2-sources ) 但仍然出错。
  • 您必须添加不带后缀 sources 的 are。你知道来源是什么吗?
  • sources 是 java 代码。您需要捆绑在 groovy-all-2.1.2.jar 中的类(已编译的源代码)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多