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 :

Préciser limite taille d'un fichier avec FileUpload mode =simple


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut Préciser limite taille d'un fichier avec FileUpload mode =simple
    Bonsoir,

    Je voudrais savoir s'il vous plait comment peut-on préciser la taille limite d'un fichier chargé avec fileupload avec le mode = simple

    J'ai fait ceci mais il me manque la taille, je sais pas comment y procéder :

    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     public void insertionMotivation() {
     
    		String expression = "([^\\s]+(\\.(?i)(doc|docx|DOC|DOCX|pdf|PDF))$)";
    		 try{
    			 if((!fileMotivation.getFileName().matches(expression)) ) {
     
    				 setRendredMotivationRedImage(true);
    				 setRendrerdMotivationValid(false);
    			 }else{	 
     
    				 setRendredMotivationRedImage(false);
    				 setRendrerdMotivationValid(true);
     
    				String nom = fileMotivation.getFileName();
    				System.out.println(nom);	
    				candidat.setMotivation(nom);	
    		        candidatBuss.modifierCandidat(candidat);
    				String path =  FacesContext.getCurrentInstance().getExternalContext().getResource("/Path.xml").toString();
    				builder = factory.newDocumentBuilder();
    				Document xml = builder.parse(path);   
    			    XPathFactory xPathFactory = XPathFactory.newInstance();
    				XPath xPath = xPathFactory.newXPath();
    				XPathExpression expr = xPath.compile("//Lettre");
    				destinationLettreMotivation = (String) expr.evaluate(xml, XPathConstants.STRING);
    				System.out.println(destinationLettreMotivation);
     
     
    				int ind = nom.indexOf(".");								
    				String mano = nom.substring(ind+1,nom.length());
    				System.out.println(mano);
    				if(mano.equals("pdf")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".pdf", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
     
    				if(mano.equals("PDF")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".PDF", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
     
    				if(mano.equals("docx")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".docx", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
     
    				if(mano.equals("DOCX")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".DOCX", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
     
    				if(mano.equals("doc")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".doc", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
     
    				if(mano.equals("DOC")){
    					copyFile(String.valueOf(candidat.getIdcandidat())+".DOC", fileMotivation.getInputstream(),destinationLettreMotivation);
    				}
    			 }
    			 }catch(Exception e){
    				e.printStackTrace();
    			}  
     
    	    }
    sachant que l'attribut sizeLimit ne fonctionne pas avec le mode=simple je pense.

    Est-ce-qu'il y a un autre chemin s'il vous plait?

    Merci

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    J'ai fait ceci mais apparemment ça ne marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <script type="text/javascript">
    $("input[type=file].imagesOnlyMax10MB").attr("accept", "image/*").on("change", function() {
        var max = 0.5 * 1024 * 1024; // 10MB
     
        if (this.files &amp;&amp; this.files[0].size > max) {
            alert("File too large."); // Do your thing to handle the error.
            this.value = null; // Clears the field.
        }
    });
    </script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    						<p:fileUpload value="#{candidatCtr.file}" mode="simple" styleClass="imagesOnlyMax10MB"/>
    Je voudrais que la taille de l'image ne dépasse pas 500 KB.? sinon le "image/* c'est quoi exactement?

  3. #3
    Traductrice
    Avatar de Mishulyna
    Femme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Par défaut
    Bonjour,

    As-tu déjà ceci dans le fichier web.xml de ton application?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <filter>
            <filter-name>PrimeFaces FileUpload Filter</filter-name>
            <filter-class>
                org.primefaces.webapp.filter.FileUploadFilter
            </filter-class>
            <init-param>
                <param-name>thresholdSize</param-name>
                <param-value>51200</param-value>
            </init-param>
            <init-param>
                <param-name>uploadDirectory</param-name>
                <param-value>C:\temp</param-value>
            </init-param>
        </filter>

  4. #4
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Mai 2011
    Messages : 790
    Par défaut
    oui j'ai déjà mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <init-param>
                <param-name>thresholdSize</param-name>
                <param-value>51200</param-value>
            </init-param>
    Mais si on possède plusieurs fileupload et on veut que le premier ne dépasse pas les 500kb et le deuxième ne dépasse pas les 2mo comment faire face à ce problème?

Discussions similaires

  1. [SQL] Limiter taille tableau html construit avec données sql
    Par syl2042 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/09/2007, 15h23
  2. limite de type de fichier avec JChooseFile!
    Par moon5 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 10/09/2007, 15h20
  3. [2.0] uploader un fichier avec FileUpload
    Par cortex024 dans le forum ASP.NET
    Réponses: 5
    Dernier message: 16/03/2007, 15h14
  4. [VB6] [Réseau] Récupérer la taille d'un fichier avec inet
    Par pcpunch dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 20/02/2003, 21h38

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