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

Développement Web en Java Discussion :

Localiser un fichier sur le disque


Sujet :

Développement Web en Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 13
    Points : 12
    Points
    12
    Par défaut Localiser un fichier sur le disque
    Je suis un étudiant(en stage PFE) en train de développer une application Spring qui tend a parcourir un fichier XML.Dans la partie présentation je ne peux pas récupérer le fichier
    le message d'erreur est la suivante:
    java.io.FileNotFoundException: D:\leChemin
    org.jboss.net.protocol.file.FileURLConnection.connect(FileURLConnection.java:94)
    org.jboss.net.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:103)
    org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
    org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
    org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
    javax.xml.parsers.SAXParser.parse(SAXParser.java:311)
    org.apache.jsp.AjouterFlux_jsp._jspService(AjouterFlux_jsp.java:105)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:336)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:408)
    com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:442)
    com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:115)
    org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
    org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
    org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
    org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

    mon code source est:
    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
    <f:view>
    	<h:form>
    <input type="file"   name="fichier"  >
    <input type="submit" id="idButton" name="ajouter" value="Ajouter" tabindex="50"/>
    	</h:form>
    </f:view>
     
    <%
    String leChemin = (String)request.getParameter("fichier");
    System.out.println("nom"+leChemin);
    SAXParserFactory fabrique = SAXParserFactory.newInstance();
    SAXParser par = fabrique.newSAXParser();
    DefaultHandler gestionnaire = new Personnelhandeler();
    File f= new File(leChemin);
    if(leChemin==null)
    {System.out.println("enAttend");}
     
    else
    {
    par.parse(f,gestionnaire);}%>
    </body>
    merci pour votre aide

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    comme le dit le message d'erreur le fichier n'existe pas.

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 13
    Points : 12
    Points
    12
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    comme le dit le message d'erreur le fichier n'existe pas.
    Mais maintenant j'arrive a localiser le fichier avce ce 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
    String leChemin = (String)request.getParameter("fichier");
    System.out.println("nom"+leChemin);
    SAXParserFactory fabrique = SAXParserFactory.newInstance();
     
    SAXParser par = fabrique.newSAXParser();
    Personnelhandeler gestionnaire = new Personnelhandeler();
    File f= new File("leChemin:"+leChemin);
     
    f.getAbsolutePath();
     
    if(leChemin==null)
    {System.out.println("enAttend");}
     
    else
    {System.out.println("enAttend"+f);
    par.parse(f,gestionnaire);
     
    }
    mais un autre message d'erreur
    java.io.FileNotFoundException: D:\utilitairesJEEPfe\jboss\jboss-4.2.2.GA\bin\leChemin:C:\Users\heythem\Desktop\hbh.xml
    org.jboss.net.protocol.file.FileURLConnection.connect(FileURLConnection.java:94)
    org.jboss.net.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:103)
    org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
    org.apache.xerces.impl.XMLVersionDetector.determineDocVersion(Unknown Source)
    org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
    org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
    org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
    org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
    javax.xml.parsers.SAXParser.parse(SAXParser.java:311)
    org.apache.jsp.AjouterFlux_jsp._jspService(AjouterFlux_jsp.java:112)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:336)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:408)
    com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:442)
    com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:115)
    org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
    org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
    com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
    com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
    org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
    org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
    org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
    org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    le message d'erreur n'a pas changé, suffit de le lire!

    D:\utilitairesJEEPfe\jboss\jboss-4.2.2.GA\bin\leChemin:C:\Users\heythem\Desktop\hbh.xml

    n'existe pas!

    Et je te conseille de revoir ton input file, avec le code que tu poste, tu tente de lire coté serveur un fichier qui se trouve sur le filesystem coté client. ca marchera tant que tu testera tout sur la même machine mais tu va vite déchanter. Ce n'est pas comme ça qu'on gère un fileupload en JSF. Il faut utiliser une librairie JSF (tomahawk, richfaces) dispoant d'un composant de type fileupload.

    Et dernière chose, on ne mélange jamais

    -> JSF
    -> les composant de formulaires html directs, ne passant pas par JSF
    -> les scriptlets


    En l'occurence ton code JSP devrais plutot ressembler à ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <f:view>
    	<h:form enctype="multipart/form-data">
    <t:inputFileUpload value="#{monBean.fichier}">
    <h:commandButton action="#{monBean.envoyerFichier}"/>
    	</h:form>
    </f:view>
    et ton code gérant l'upload doit être mis dans ta méthode d'action.
    Plus de détails http://wiki.apache.org/myfaces/Setup_For_File_Uploads

Discussions similaires

  1. [VB.NET] Comment rechercher des fichiers sur un disque.
    Par vijeo dans le forum Windows Forms
    Réponses: 5
    Dernier message: 04/08/2017, 10h17
  2. [Réseau] Liens vers fichiers sur un disque
    Par Kuuei dans le forum Langage
    Réponses: 13
    Dernier message: 21/05/2006, 23h51
  3. Condition sur existence de fichier sur le disque dur
    Par manshoon dans le forum Langage
    Réponses: 3
    Dernier message: 10/05/2006, 09h58
  4. [Debutant] Applet listant les fichiers sur le disque
    Par romu92 dans le forum Applets
    Réponses: 2
    Dernier message: 05/05/2006, 09h26
  5. commande pour trouver un fichier sur le disque dur...
    Par angelevil dans le forum VB 6 et antérieur
    Réponses: 14
    Dernier message: 11/11/2005, 00h10

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