Lire fichier excel à partir d'une JSP
Bonjour,
J'aimerai lire un document excel à partir d'une JSP.
le problème, c'est que j'ai cette erreur ci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| Etat HTTP 500 -
--------------------------------------------------------------------------------
type Rapport d''exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
javax.servlet.ServletException: L''exécution de la servlet a lancé une exception
cause mère
java.lang.NoClassDefFoundError: org/apache/poi/poifs/filesystem/POIFSFileSystem
Action.ActionImport.traiter(ActionImport.java:32) Controlleur.Controlleur.doPost(Controlleur.java:22)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722) |
Voici ma classe ActionImport:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| package Action;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Iterator;
import javax.servlet.http.*;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import Modele.*;
import Outil.*;
public class ActionImport implements Action{
private ADO ado = new ADO();
private String ligne="";
@Override
public String traiter(HttpServletRequest req, HttpServletResponse rep){
String chemin_fichier = req.getParameter("file");
try {
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream(chemin_fichier)); HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(0); //dans le 1er onglet
HSSFRow row = null;
HSSFCell cell = null;
double totalLigne = 0.0;
double totalGeneral = 0.0;
int numLigne = 1;
for (Iterator rowIt = sheet.rowIterator(); rowIt.hasNext();) {
totalLigne = 0;
row = (HSSFRow) rowIt.next();
for (Iterator cellIt = row.cellIterator(); cellIt.hasNext();) {
cell = (HSSFCell) cellIt.next();
totalLigne += cell.getNumericCellValue();
}
//req.getSession().setAttribute("message", "total ligne "+numLigne+" = "+totalLigne);
//System.out.println("total ligne "+numLigne+" = "+totalLigne);
totalGeneral += totalLigne;
numLigne++;
}
//req.getSession().setAttribute("message", "total general "+totalGeneral);
//System.out.println("total general "+totalGeneral);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
req.getSession().setAttribute("message", chemin_fichier);
req.getSession().setAttribute("page", "import.jsp");
return "resultat.jsp";
}
} |
la ligne 32 est celle en rouge.
Je dois mal m'y prendre.
J'ai recherché des exemple de lecture de fichier à partir d'un jsp mais nada.
quelqu'un l'a-t-il déja fait ou me dire la solution ?
Merci