【问题标题】:java.lang.NoClassDefFoundError: org/apache/poi/ss/usermodel/RichTextString at org.primefaces.component.export.ExporterFactory.getExporterForTypejava.lang.NoClassDefFoundError:org.primefaces.component.export.ExporterFactory.getExporterForType 处的 org/apache/poi/ss/usermodel/RichTextString
【发布时间】:2012-11-08 16:36:10
【问题描述】:

我使用了 Primefaces 在其网页中的相同示例代码:

<h:commandLink value="Excel">                     
  <p:dataExporter type="xls" target="dataTable" fileName="boo" pageOnly="true"/>  
</h:commandLink>

但不起作用。 在 Internet Explorer 浏览器中给出以下消息:

网页错误详情 Message: Unexpected call to 方法或属性访问。

在 Mozilla Firefox 中什么都不会发生。

可能会发生什么?

【问题讨论】:

  • 你使用的是什么版本的 primefaces?
  • IE 中的错误消息是 JS/jQuery 特定的错误(因此不是 JSF 特定的)。您可能想先检查 JS 代码的正确性(加载处理程序、事件侦听器等)。至于 Firefox 没有反馈,你是否也检查了它的 JS 控制台?
  • 还要检查您是否没有嵌套表单;一个面向 JSF+PrimeFaces 的问题是关于完全相同的 IE 错误消息,但后来有了更好的 SSCCE:stackoverflow.com/questions/9501448/…,结果证明是嵌套表单。
  • @kolossus primefaces 3.4 版
  • 顺便说一句... CSV 与 XLS 不同。

标签: jsf primefaces datatable export-to-excel data-export


【解决方案1】:
javax.servlet.ServletException: org/apache/poi/ss/usermodel/RichTextString

进一步查看堆栈跟踪。我敢打赌,根本原因是NoClassDefFoundError 还是ClassNotFoundException?在这种情况下,这只是意味着您忘记安装Apache POI

下载this Apache POI zip file,解压,将poi-3.8-20120326.jar放入/WEB-INF/lib文件夹,重新构建/重新部署/重启webapp。

【讨论】:

  • 我下载了完整的包poi。我的 Excel 2003 正在尝试生成 xlsx,因此出现错误?好吧,从我在poi.apache.org poi3.8 版本中读到的内容应该适用于 Excel 2003 以及 2007 和 2010。
  • 我添加了 poi 3.8 库,现在给出以下异常:javax.servlet.ServletException:类未实现 org.apache.poi.hssf.usermodel.HSSFWorkbook 请求的接口 org.apache。 poi.ss.usermodel.Workbook 。知道可以是什么吗?
  • 显然您还出于某种原因安装了 JExcelAPI 并从错误的包中导入了Workbook。确保它是 org.apache.poi.ss.usermodel.Workbook 之一,如果您根本不使用它,请删除 JExcelAPI。
  • 我没有找到apiapi来操作Excel。 JExcelAPI 也没有。老实说,我不知道如何解决它。
  • 好的。也许您的 webapp 的运行时类路径中有多个可能不同版本的 Apache POI 库?这也可能是一个原因。清理 webapp 的运行时类路径,以便您最终只得到一个正确的 POI 版本。
【解决方案2】:

尝试放这个jar文件。我显示链接,因为我解决了这个问题。

http://apache.mirrors.pair.com/poi/release/bin/poi-bin-3.9-20121203.zip

【讨论】:

    猜你喜欢
    • 2019-05-27
    • 1970-01-01
    • 2019-06-14
    • 2016-03-29
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 2017-10-26
    • 1970-01-01
    相关资源
    最近更新 更多