在Vaadin中添加NoClassDefFoundError的加载项

时间:2015-12-16 13:07:44

标签: vaadin add-on export-to-pdf

我遇到了这个将屏幕内容转换为PDF文件的插件。但是,当我添加这些代码行时:

PdfFromComponent factory = new PdfFromComponent();
factory.export(contentcity);

我收到此错误消息:

  

' javax.servlet.ServletException:com.vaadin.server.ServiceException:   java.lang.NoClassDefFoundError:com / itextpdf / text / DocumentException'   根本原因:' com.vaadin.server.ServiceException:   java.lang.NoClassDefFoundError:com / itextpdf / text / DocumentException'

我已经将jar文件添加到库中并编译了widgetset,但错误仍然存​​在。有人可以简单地解释一下如何处理这个问题吗?

2 个答案:

答案 0 :(得分:2)

您需要将以下Maven依赖项添加到项目中:

<dependency>
   <groupId>com.itextpdf</groupId>
   <artifactId>itextpdf</artifactId>
   <version>5.5.6</version>
</dependency>

由于某些奇怪的原因,作者没有在他的插件中发送pom文件,因此他无法将此标记为依赖。

答案 1 :(得分:-1)

不幸的是,当有一个类的多个版本时,JVM也会抛出NoClassDefFoundError。可能是您的类路径中有多个iText JAR。检查您使用的加载项是否包含iText JAR,并仔细检查您是否多次包含JAR。