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

Seam Java Discussion :

Problème avec servlet


Sujet :

Seam Java

  1. #1
    Membre régulier
    Inscrit en
    Février 2008
    Messages
    222
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 222
    Points : 120
    Points
    120
    Par défaut Problème avec servlet
    Salut,

    j'aimerai savoir s'il est possible d'utiliser ces propres servlets avec le framework seam, c'est à dire, je vourdrai créer un formulaire et dans l'attribut action de ce formulaire je voudrai appelé une servlet (la méthode DoGet)

    Pour cela, j'ai créé une classe java dans le dossier de mes sessionBeans, voici le code :

    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
    public class Download extends HttpServlet{
     
    	public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException{
    		FacesContext context = FacesContext.getCurrentInstance();
    		ExternalContext ec = context.getExternalContext();
    		String filePath = null;
    		String fileName = null;
    		int read = 0;
    		byte[] bytes = new byte[1000];
     
     
    		response.setContentType("application/pdf");
    		response.addHeader("Content-disposition", "attachment; filename=\"" + fileName +"\"");
     
    		filePath = "C:\\tutoriaux"; 
    		fileName = "jpa.pdf";
     
    		try
    		{
    			ServletOutputStream os = response.getOutputStream();
    			File file = new File(filePath,fileName);
    			FileInputStream fis = new FileInputStream(file);
     
    			while((read = fis.read(bytes)) != -1)
    			{
    				os.write(bytes,0,read);	  	    	  
    			}
     
    			os.flush();
    			context.responseComplete();
    			os.close();
     
    			System.out.println("\nSuccess\n");
    		}
    		catch(Exception e)
    		{
    			System.out.println("\nFailure : " + e.toString() + "\n");
    		}
     
     
     
    	}
    }
    Ensuite, j'ai ajouté les lignes suivantes dans le web.xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
         <servlet>
            <servlet-name>Download</servlet-name>
            <servlet-class>sessionBeans.Download</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>Download</servlet-name>
            <url-pattern>/Download</url-pattern>
        </servlet-mapping>
    Mais lorsque je tape l'url de ma servlet sous firefox, voici l'erreur que j'ai :

    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
     
    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: java.lang.IllegalArgumentException: no file extension in servlet path: /Download
    	org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:126)
    	org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
    	org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
    	org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
    	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
     
    cause mère
     
    java.lang.IllegalArgumentException: no file extension in servlet path: /Download
    	org.jboss.seam.mock.MockViewHandler.getActionURL(MockViewHandler.java:44)
    	org.jboss.seam.jsf.SeamViewHandler.getActionURL(SeamViewHandler.java:74)
    	org.jboss.seam.faces.FacesManager.redirect(FacesManager.java:154)
    	org.jboss.seam.faces.Redirect.execute(Redirect.java:139)
    	org.jboss.seam.exception.DebugPageHandler.handle(DebugPageHandler.java:32)
    	org.jboss.seam.exception.Exceptions.handle(Exceptions.java:75)
    	org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:114)
    	org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
    	org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
    	org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
    	org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
    	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
     
    note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de JBossWeb/2.0.1.GA.
    JBossWeb/2.0.1.GA
    D'où peut venir le problème ?

    Je travaille avec la version 2.0.2.CR1 de seam

    Merci

  2. #2
    Membre régulier
    Inscrit en
    Février 2008
    Messages
    222
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 222
    Points : 120
    Points
    120
    Par défaut
    J'ai résolu mon problème, j'avais un problème de syntaxe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème avec servlet
    Par hpnet dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 08/09/2008, 09h24
  2. Problèmes avec Servlet
    Par bpmfoukamoko dans le forum Tomcat et TomEE
    Réponses: 2
    Dernier message: 08/07/2008, 20h20
  3. Problème avec les servlets sous eclipse
    Par supertoms dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 03/03/2007, 19h07
  4. [SQL QUERY] Problème avec les servlet plutôt qu'avec SQL
    Par Battosaiii dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 11/04/2006, 01h08
  5. [débutant][servlet]Problème avec Servlet login
    Par stago dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 10/05/2005, 00h05

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