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

Struts 1 Java Discussion :

Validation d'un FormBean contenant un FormFile


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Par défaut Validation d'un FormBean contenant un FormFile
    salut,
    je suis entraint de travailer sur un projet en struts et je veut testé sur un FormBean qui contient un Champ FormFile je veut tester pour voir si mon champ est vide ou non j'ai aissyé ceci mais ça ne marche pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if( frm.getCv()!= null)
    et aussi ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if( frm.getCv().equals(""))
    tous les deux ne marche pas sachant que frm.getCv retourne un FormFile.

    merci d'avance.

  2. #2
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    la syntaxe correcte est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if( frm.getCv()!= null){
    /* Ton traitement*/
     
    }
    Quand tu dis ca ne marche pas qu'est ce que ca signifie exactement?

    Fais voir la classe de la methode getCv() aussi!

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Par défaut
    ça ne fonctionne pas veut dire lorsque je je fait ce test il entre dans la boucle malgré que je n'est pas uploader de fichier.
    voila le traitement que je fait :
    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
     
    if( frm.getCv()!= null)
    		{
    System.out.println("un cv est uploader");
    String path="C:/upload";
    File file=new File(path);
    if(! file.exists())
          file.mkdir();
    path+="/"+frm.getNom()+"_"+frm.getPren();
    File f1=new File(path);
    f1.mkdir();
    InputStream input=frm.getCv().getInputStream();
    FileOutputStream output=new FileOutputStream(path+"/"+frm.getCv().getFileName());
    BufferedOutputStream boutput=new BufferedOutputStream(output);
    byte[] b=new byte[input.available()];
    while(input.read(b) != -1)
    	boutput.write(b,0,b.length);
    boutput.flush();
    output.close();
    input.close();
    cv.setCv(path+"/"+frm.getCv().getFileName());	
    }
    else
             cv.setCv("");
    pour la classe du frm.getCv() je vous assure qu'elle correcte c'est un FormBean classic je ne peut pas lamettre ici car elle est tres grande.
    merci encore

  4. #4
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    Citation Envoyé par willoi
    Fais voir la classe de la methode getCv() aussi!
    et cette classe ...

    Citation Envoyé par ayoub2010
    ça ne fonctionne pas veut dire lorsque je je fait ce test il entre dans la boucle malgré que je n'est pas uploader de fichier.
    quelle boucle?

    Il faut que tu prennes en compte que je n'ai pas ton programme sous les yeux et que certaines choses que tu dis ne coulent pas forcement de source pour quelqu'un d'exterieur.
    Alors essayes de donner plus des sources, ainsi que quelques explications.

  5. #5
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 44
    Par défaut
    je suis désolé je voulait dire qu'il entre dans le if(){............}
    (il execute le code dans le if(cv != null) malgré que je n'est uploader aucun fichier).
    et voila la partie qui concerne le FormFile dans mon ActionForm :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    private FormFile cv;
    public FormFile getCv()
    {return cv;}
     
    public void setCv(FormFile cv) 
    {this.cv = cv;}
    j'ai lu qu'il faut implementer la methode reset et affecter un null à l'attribut de type FormFile donc j'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public void reset(ActionMapping mapping,HttpServletRequest request)
    {cv=null;}
    encore désole car je ne peut pasmettre toute la classe car elle est trop longue.
    merci.

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    123
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Côte d'Or (Bourgogne)

    Informations forums :
    Inscription : Avril 2007
    Messages : 123
    Par défaut
    Essaye ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    frm.getCv().getFileName().compareTo("")!=0

  7. #7
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    Je pense que la solution de Cronycs devrait marcher sinon, fais voir la jsp dans laquelle tu realises la soumission de ton formulaire.

  8. #8
    Membre confirmé
    Avatar de osopardo
    Inscrit en
    Juillet 2005
    Messages
    92
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juillet 2005
    Messages : 92
    Par défaut
    Puisque ça parle de validation de FormFile je me permet d'enchaîner avec une autre question, la méthode de Cronycs fonctionne plutôt bien mais par contre lorsque je valide et que ça échoue je perd le chemin du fichier à l'affichage alors que tout les autres champs conservent bien leurs valeurs.

    Est-ce que c'est normal ? Est-ce qu'il y a un moyen pour conserver ce chemin de fichier ?

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

Discussions similaires

  1. [ZF 1.11] Validation d'un formulaire contenant un champ 'File'
    Par Paul75 dans le forum Zend_Form
    Réponses: 7
    Dernier message: 13/01/2011, 11h30
  2. [Toutes versions] Validation-type liste-éléments contenant des virgules
    Par pgz dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/03/2010, 15h02
  3. Erreur de validation à cause de liens contenant des variables
    Par Darel dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 13/02/2009, 18h57
  4. validation d'un textbox contenant une heure
    Par tortuegenie dans le forum ASP.NET
    Réponses: 2
    Dernier message: 08/04/2008, 17h39
  5. [XHTML 1.1] Validation d'une page contenant du javascript
    Par jacquesh dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 27/02/2006, 14h53

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