使用POI jar文件读取Excel文件

时间:2010-11-17 15:10:30

标签: java excel servlets

我编写了一个程序,它从csv文件中读取输入并且工作正常。我按如下方式读取了csv文件的输入流。

BufferedReader br=new BufferedReader(new InputStreamReader(item.getInputStream()));

现在我正在更改程序以便从excel文件中读取输入。所以我将代码更改为这种格式,而编译时没有错误。

POIFSFileSystem ps = new POIFSFileSystem(item.getInputStream());
HSSFWorkbook workbook = new HSSFWorkbook(ps);

但是在提交JSP页面时,我收到以下错误。什么问题和我出错的地方?请指教。

javax.servlet.ServletException: Servlet execution threw an exception

root cause

java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/POIFSFileSystem
Readcsvv.doPost(Readcsvv.java:120)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

2 个答案:

答案 0 :(得分:1)

您的POI罐子不在类路径中。将它们放在WEB-INF / lib文件夹中 另一个不太可能的原因可能是您的罐子版本与预期的不同。

答案 1 :(得分:0)

您似乎忘记在CLASSPATH中包含POI库(例如,您的Web应用程序未引用它)。您可以在WEB-INF / lib下(在WAR归档文件中或以展开的目录格式)中包含此lib,也可以将其放在app server / web server CLASSPATH中的其他位置