您好我正在尝试在 NetBeans7 IDE,java6,glassfish3.2环境中生成动态报告。
我正在使用 java>创建项目网络应用程序。 我在坛子下面使用
公地集合-3.2.1
公地消化器-2.0
dynamicreports-1.3.0
dynamicreports-即席-4.0.1
dynamicreports核-4.0.1
iText的-2.1.7
JasperReports的-6.1.0
共享记录-1.2
共享记录-1.2-的javadoc
共lang3.jar
但我正在
线程“main”中的异常java.lang.NoClassDefFoundError:org / apache / commons / lang / Validate
我调查了这个问题并找到了
我必须添加
1)common-lang3.jar
2)和WEB-INF> lib,
中缺少common-lang3.jar
我添加了提到的jar和
它也可以在WEB-INF> lib中找到。
但我仍面临同样的问题。
在运行java文件时找到以下异常
运行:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/Validate
at net.sf.dynamicreports.report.base.component.DRList.setType(DRList.java:78)
at net.sf.dynamicreports.report.base.component.DRList.<init>(DRList.java:50)
at net.sf.dynamicreports.report.base.DRBand.<init>(DRBand.java:41)
at net.sf.dynamicreports.report.base.DRReport.init(DRReport.java:113)
at net.sf.dynamicreports.report.base.DRReport.<init>(DRReport.java:97)
at net.sf.dynamicreports.report.builder.ReportBuilder.<init>(ReportBuilder.java:60)
at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.<init>(JasperReportBuilder.java:95)
at net.sf.dynamicreports.report.builder.DynamicReports.report(DynamicReports.java:65)
at net.sf.dynamicreports.examples.adhoc.DynamicReporting.main(DynamicReporting.java:20)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.Validate
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 9 more
Java Result: 1
BUILD SUCCESSFUL (total time: 2 seconds)
我的代码:
public class DynamicReporting{
public static void main(String args[]) throws DRException, FileNotFoundException{
JasperReportBuilder report= DynamicReports.report();
report.toPdf(new FileOutputStream(new File("c:/report.pdf")));
System.out.print("Report generated");
}
}
任何人都可以提出我所遗漏的内容。谢谢提前
答案 0 :(得分:3)
从jar列表中的dynamicreports-core-4.0.1
开始,我可以说你使用的是4.0.1版本,所以你不需要dynamicreports-1.3.0
这个。
我刚从下面链接下载了依赖项
http://sourceforge.net/projects/dynamicreports/files/dynamicreports/4.0.1/
你需要运行你的代码片段就是项目类路径中的这个jar列表,
您可以看到这与您的不匹配,因此您正在混合jar的许多差异版本。
注意:所有这些罐子都可以在这些链接下找到。
答案 1 :(得分:0)
如果您使用的是动态报告4.1.1,则应选择JasperReports 6.2.2
DynamicReports 4.1.0发布了JasperReports 6.2.0, DynamicReports 4.0.2发布了JasperReports 6.1.1 等
http://www.dynamicreports.org/news
要添加的库应如下所示。我犯了同样的错误并通过加载这些库来解决它,我希望它有所帮助。