java.lang.ClassNotFoundException:com.github.dandelion.datatables.core.export.ExportProperties

我正在使用我的spring项目中的dandalion数据表。 我想导出我的数据表格网格为PDF,Excel等。

所以我开始使用PDF

按照这个链接

我一个一个地跟着步骤

第1步:添加jar文件

数据表,出口的iText-0.10.0.jar
数据表出口-POI-0.10.0.jar
数据表出口-POI-OOXML-0.10.0.jar
iText的-1.3.jar

第2步:添加Web.xml筛选器

  <!-- Dandelion-Datatables filter definition (used for export) --> <filter> <filter-name>datatablesFilter</filter-name> <filter-class>com.github.dandelion.datatables.extras.servlet2.filter.DatatablesFilter</filter-class> </filter> <filter-mapping> <filter-name>datatablesFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 

而在jsp中

  <datatables:table id="roles" data="${list}" cssClass="table table-striped" pageable="true" displayLength="5" filterable="true" processing="true" autoWidth="true" export="pdf"> <datatables:column title="Id" property="roleId" /> <datatables:column title="Role" property="role" /> <datatables:export type="pdf" cssClass="btn btn-small" /> </datatables:table> 

但是我得到以下错误。

java.lang.ClassNotFoundException:com.github.dandelion.datatables.core.export.ExportPropertiesat org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)at org.apache.catalina.loader.WebappClassLoader.loadClass( (ApplicationFilterChain.java:235) org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at com.github.dandelion.core.web.DandelionFilter.doFilter(DandelionFilter.java:157)at org.apache.catalina.core.ApplicationFilterChain .internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter(FilterChainProxy.java:330)at org.springframework.security.web.access .intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)at org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter (FilterChainProxy.java:342)at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)at org ….

我在想什么?

请提供任何帮助。 提前致谢。

从v0.10.0开始,安装步骤已经改变,并且datatables-servlet2额外的,其中提到的旧的DatatablesFilter类不再存在。

首先,确保已经在web.xml文件中声明了所有需要的组件,特别是DandelionFilterDandelionServlet 。 安装指南在这里 。 还编写了从0.9.x到0.10.x的迁移指南 。

关于导出function,看起来你更喜欢基于filter的导出。 在这种情况下,您还必须更新您的web.xml文件:

 <!-- Dandelion-Datatables filter used for basic export --> <filter> <filter-name>datatables</filter-name> <filter-class>com.github.dandelion.datatables.core.web.filter.DatatablesFilter</filter-class> </filter> <filter-mapping> <filter-name>datatables</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 

在这里阅读更多有关使用基于filter的导出时的要求。

默认情况下, datatables-core JAR为XML和CSV格式提供实用程序类。 如果要以PDF,XLS或XLSX格式导出,则存在其他实用程序,它们位于不同的附加内容中。 在这里看到有关导出function的新介绍。

当然,为了避免任何其他的依赖问题,我强烈build议使用一个构build工具,比如Maven或者Gradle。

(免责声明需要StackOverflow:我是蒲公英的作者)

看起来像你的类path中缺lessdatatables-core-xyzjar