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 :

Probleme avec rich:fileUpload


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut Probleme avec rich:fileUpload
    Salut
    J'essai d'uploader un fichier PDF dans un répertoire, comme suit:
    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
    private UploadItem item;
     
    	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.
     
    	        item = event.getUploadItem();
    	        String filename = item.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.  
     
    	}
    // avec getter et setter pour item
    Je reçoit l'erreur suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    WARN  [lifecycle] org.apache.jasper.el.JspELException: /addArt.jsp(75,3) '#{fileUploadBean.listener}' java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    javax.faces.el.EvaluationException: org.apache.jasper.el.JspELException: /addArt.jsp(75,3) '#{fileUploadBean.listener}' java.lang.StringIndexOutOfBoundsException: String index out of range: -1
    	at org.richfaces.webapp.taglib.MethodBindingMethodExpressionAdaptor.invoke(MethodBindingMethodExpressionAdaptor.java:73)
    avec "Transfer error occured" sur le formulaire web. (le répertoire je l'ai déja créé à l'avance)
    Merci

  2. #2
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut
    Aucune idée?

  3. #3
    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
    Citation Envoyé par aniss77 Voir le message
    Aucune idée?
    utilise ton debugguer voir ce qui se passe dans la méthode listener;

    le problème vient probablement du la ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dest=Dest+filename.substring(filename.lastIndexOf("\\"));

  4. #4
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut
    Merci Sniper
    c'est presque résolu
    Je peux uploader mes fichier, et les référencier dans ma base de données.
    Mais mon probleme maintenant c'est comment récupérer le chemin des fichiers uploader? Je veux bien les uploader sur un autre chemin
    Car j'on est besoin pour la fonction de Download.
    J'ai vu dans un autre sujet que la méthode File.renameTo(), a résolu le probleme pour qq1, mais je saits pas comment l'utiliser, car ça prend un File comme parametre, et non une chaine de caractere indiquant un chemin ...

  5. #5
    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 mets quoi en base?? tu récupérer le fichier avec l'upload, tu fais ce que tu veux, sauvegarder le flux e byte en base, ou créer un nouveau fichier le renommer et le mettre sur un serveur FTP..

  6. #6
    Membre confirmé
    Inscrit en
    Février 2009
    Messages
    107
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 107
    Par défaut
    Citation Envoyé par Sniper37 Voir le message
    tu mets quoi en base?? tu récupérer le fichier avec l'upload, tu fais ce que tu veux, sauvegarder le flux e byte en base, ou créer un nouveau fichier le renommer et le mettre sur un serveur FTP..
    Je récupere et j'insere dans la base le nom et le type de fichier.
    Et je veux bien récupérer le chemin, et le changer vers la racine par exemple.

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 06/01/2009, 21h30
  2. problem avec rich:paint2D
    Par iviath dans le forum JSF
    Réponses: 1
    Dernier message: 20/10/2008, 17h04
  3. Probleme avec <rich:fileUpload>
    Par hibao dans le forum JSF
    Réponses: 10
    Dernier message: 16/10/2008, 12h26
  4. Probleme avec Rich:panelMenu
    Par midos dans le forum JSF
    Réponses: 1
    Dernier message: 08/09/2008, 08h29
  5. Probleme avec rich:fileupload
    Par solarien dans le forum JSF
    Réponses: 6
    Dernier message: 21/08/2008, 17h06

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