IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Documents Java Discussion :

Génération doc Excel dans servlet


Sujet :

Documents Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Points : 114
    Points
    114
    Par défaut Génération doc Excel dans servlet
    Bonjour , petit problème pour générer un document Excel dans une servlet

    Je travaille avec Eclipse Helios et Tomcat 6.0

    voici le message d'erreur du serveur et le code

    Merci pour votre aide

    "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/hssf/usermodel/HSSFWorkbook
    packExcel.ExcelWeb.doGet(ExcelWeb.java:43)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

    "

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    69
    70
    71
     
    package packExcel;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.OutputStream;
     
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
     
    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;
     
    /**
     * Servlet implementation class ExcelWeb
     */
    public class ExcelWeb extends HttpServlet {
    	private static final long serialVersionUID = 1L;
     
        /**
         * @see HttpServlet#HttpServlet()
         */
        public ExcelWeb() {
            super();
            // TODO Auto-generated constructor stub
        }
     
    	/**
             * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
             */
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		try {
    		      OutputStream out = response.getOutputStream();
     
    		      response.setContentType("application/vnd.ms-excel");
     
    		      //response.setHeader("Content-disposition", "inline; filename=monfichier.xls");  // attachment
    		      response.setHeader("Content-disposition", "attachment; filename=monfichier.xls");
     
    		      HSSFWorkbook wb = new HSSFWorkbook();
     
    		      HSSFSheet sheet = wb.createSheet("ma feuille");
     
    		      HSSFRow row = sheet.createRow(0);
    		      HSSFCell cell = row.createCell((short) 0);
    		      cell.setCellValue(10);
     
    		      row.createCell((short) 1).setCellValue(20);
     
    		      wb.write(out);
    		      out.flush();
    		      out.close();
    		    } catch (FileNotFoundException e) {
    		      e.printStackTrace();
    		    } catch (IOException e) {
    		      e.printStackTrace();
    		    }
    	}
     
    	/**
             * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
             */
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		// TODO Auto-generated method stub
    	}
     
    }

  2. #2
    Membre éclairé Avatar de Ceddoc
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2009
    Messages : 493
    Points : 698
    Points
    698
    Par défaut
    Tu sembles essayer d'utiliser les HSSFWorkbook qui viennent de la bibliothèque apache POI tu as bien pensé a ajouter le jar à ton BuildPath et a faire en sorte qu'il se déploie correctement?

  3. #3
    Membre chevronné

    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    974
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 974
    Points : 1 825
    Points
    1 825
    Par défaut
    il faut mettre libpoi**.jar dans ton webapps/lib ou dans le répertoire /lib sous tomcat

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    315
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2009
    Messages : 315
    Points : 114
    Points
    114
    Par défaut merci pour vos 2 réponses
    Ok il fallait ajouter dans le répertoire /lib sous tomcat

    j'avais placé les .jar de POI ds Java Ressources / librairies (sous Eclipse)

    Je peux les retirer, je suppose ...

    Peut-on me situer le contexte de ce genre de servlet (je découvre ...)

Discussions similaires

  1. [XL-2010] Programme affichage doc excel dans VBA
    Par Rob's dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/06/2013, 08h55
  2. [Servlet]POI et affichage d'un fichier excel dans IE
    Par vseb99 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 08/02/2006, 13h59
  3. Réponses: 14
    Dernier message: 06/02/2006, 11h31
  4. copier une feuille dans un nouveau doc excel
    Par alkmehd dans le forum Access
    Réponses: 1
    Dernier message: 24/09/2005, 11h01
  5. ouvrir et écrire dans un doc excel
    Par audrey_ dans le forum ASP
    Réponses: 8
    Dernier message: 13/12/2004, 15h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo