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

JSF Java Discussion :

Richfaces avec uploadFile


Sujet :

JSF Java

  1. #21
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    si tu veux l'enregistrer sur la racine de ton site, il faut récupérer l'adresse et enregistrer le fichier sur cette adresse.

    tu peux utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    request.getContextPath() ;
    le reste c'est des questions concernant Java IO.
    N'oublies pas

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    pour déplacer le fichier depuis son enmplacement temporaire, utilise plutot File.renameTo()

  3. #23
    Membre confirmé
    Développeur informatique
    Inscrit en
    Août 2007
    Messages
    118
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2007
    Messages : 118
    Par défaut
    Excellant!!
    File.renameTo() m'a résolut le problème

  4. #24
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 53
    Par défaut Copier l'apload dans un autre emplacement
    Bonjour,

    J'ai suivi ce que vous avez décris ici et ca marche .

    Je veux copier ce que j'ai uplouder dans un autre emplacement.

    Avez vous un exemple.


    Merci

  5. #25
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    tu peux soit utiliser l'api FileUtil de apache, ou, poser la question dans le forum java IO.

  6. #26
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 53
    Par défaut Copier ce qui a été uploadé dans un autre emplacement.
    Merci Sniper37.

    En faite merci à tous.

    j'ai pu copier ce qui a été aploadé dans un autre emplacement.

    voila le code de la méthode listener :

    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
     
    public void listener(UploadEvent event) throws IOException {
    		FileChannel in = null; // canal d'entrée
    		FileChannel out = null; // canal de sortie
    		String Dest="C:/testupload/";  // repertoire de destination.
     
    	        uploadItem = event.getUploadItem();
    	        String filename = uploadItem.getFileName();
    	        Dest=Dest+filename.substring(filename.lastIndexOf("\\")); // prendre le chemin du fichier source (fichier aploadé)
    	        in = new FileInputStream(filename).getChannel();
    			out = new FileOutputStream(Dest).getChannel();
    			in.transferTo(0, in.size(), out); // copier.
     
     
     
     
     
    	}

    Bonne journée

  7. #27
    Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 2
    Par défaut ma solution :
    Citation Envoyé par majidiabdo Voir le message
    Merci Sniper37.

    En faite merci à tous.

    j'ai pu copier ce qui a été aploadé dans un autre emplacement.

    voila le code de la méthode listener :

    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
     
    public void listener(UploadEvent event) throws IOException {
    		FileChannel in = null; // canal d'entrée
    		FileChannel out = null; // canal de sortie
    		String Dest="C:/testupload/";  // repertoire de destination.
     
    	        uploadItem = event.getUploadItem();
    	        String filename = uploadItem.getFileName();
    	        Dest=Dest+filename.substring(filename.lastIndexOf("\\")); // prendre le chemin du fichier source (fichier aploadé)
    	        in = new FileInputStream(filename).getChannel();
    			out = new FileOutputStream(Dest).getChannel();
    			in.transferTo(0, in.size(), out); // copier.
     
     
     
     
     
    	}

    Bonne journée






    //**** Dest=Dest+filename.substring(filename.lastIndexOf("\\")); ******// ?? il ya un petit problem :
    -si on fait l' upload de mon localhost alors la resource se lit de cette maniere : C:\Sun\java\monfichieruploader.jpg
    -si on fait l'upload d'une machine externe ,dans cet cas la resource vat etre lit de cette maniere : monfichieruploader.jpg
    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
     
               public void listener(UploadEvent event) throws FileNotFoundException, IOException {
      if (event == null) {
     
      } 
    else {
     
        UploadItem uploadItem = event.getUploadItem(); 
          String filename = uploadItem.getFileName();
     
      // on construit un Fichier avec le path/nomdufichierrecu
          java.io.File uploadedFile = uploadItem.getFile();
     
     saveFile(uploadedFile , "c:\\temp\\", filename);
     
     
    }
    }

    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
     
    public void saveFile(java.io.File file, String path, String fileName) {
     
    try {
    if(contient('\\',fileName))
       {
        fileName=fileName.substring(fileName.lastIndexOf("\\"));
     
     }
        java.io.File fileToWrite = new java.io.File(path+fileName);
        FileChannel in = null; 
          FileChannel out = null;
     
            in = new FileInputStream(file).getChannel();
            out = new FileOutputStream(fileToWrite).getChannel();
            in.transferTo(0, in.size(), out);
     
       in.close();
                out.close();
     
            } catch (Exception e) {
                e.printStackTrace();
            }
    }
    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
     
    public static boolean contient(char c , String msg2)
    {
        boolean contenu_dans = true;
    	boolean trouve_lettre = false;
     
     
            for (int i = 0; i < msg2.length() - 1; i++)
            {
     
     
    			{
    				if (msg2.charAt(i) == c)
    			{
    				        trouve_lettre = true;
     
                                            break;
    			            }
    				}
    			}
    			if (trouve_lettre == false)
    			{
    				return false;
    }
    n'oublier ps d'autoriser la creation des fichiers temporels dans web.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <init-param> <param-name>createTempFiles</param-name>
    <param-value>true</param-value> </init-param>
    bon courage c mon premier msg ds ce forum

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Probleme d'integration de richfaces avec jsf 1.1
    Par lakhdharani dans le forum JSF
    Réponses: 9
    Dernier message: 27/04/2009, 16h01
  2. Intégration RichFaces avec JSF
    Par demanghonj dans le forum JSF
    Réponses: 11
    Dernier message: 24/04/2009, 12h20
  3. Réponses: 1
    Dernier message: 12/05/2008, 13h14
  4. Utiliser RichFaces avec JSF 1.2
    Par Dimitri_87 dans le forum JSF
    Réponses: 3
    Dernier message: 02/04/2008, 18h07
  5. Réponses: 9
    Dernier message: 24/01/2008, 09h35

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