Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [JAVA]Problema con multipart/form-data e getContentType

    Salve.
    Ho la necessità di verificare che l'utente inserisca in una form un file di tipo esclusivamente zip da uploadare sul server; innanzitutto utilizzo il seguente html

    codice:
    <input name="materiale" type="file" accept="application/x-zip-compressed" size="27">
    ma l'accept non fa niente, da quanto so dovrebbe dire al browser di far selezionare solo zip mentre invece se ne sbatte altamente...
    Comunque, il problema principale che riscontro e per cui chiedo aiuto è che la servlet che gestisce la richiesta deve indirizzarmi ad una pagina di errore se il file immesso non è zip. Per far questo utilizzo il seguente codice

    codice:
    while (files.hasMoreElements())
           {
              name = (String)files.nextElement();
              type = upload.getContentType(name);
              f = upload.getFile(name);
           }  
           
           if (!type.equals("application/x-zip-compressed"))
           {
              f.delete();
              System.out.println("Controllo se file è zip");
              RequestDispatcher rd = getServletContext().getRequestDispatcher("/CreazioneLezioneFallito.html");
              rd.forward(request, response);           
           }
    dove upload è un oggetto di tipo MultipartRequest.
    Per quale motivo se uso IE funziona tutto perfettamente, mentre con Firefox vengo indirizzato sempre alla pagina di errore anche se il file è del giusto tipo ?
    Grazie

  2. #2
    Nessuno mi aiuta? :rollo:

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Non tutti i browsers mandano headers dello stesso tipo, pure per cose analoghe. Se ti stai basando su una proprietà letta dal browser, prova a stampare di volta in volta quel che viene effettivamente passato da ogni browser. Comunque, mi fiderei di più di un controllo sul file effettivamente caricato che su un header passato da un browser (che può essere modificato a piacimento, per esempio, in telnet).
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  4. #4
    Ti ringrazio per la risposta. Proprio su html.it ho trovato un frammento di codice che legge dentro una directory e va a vedere il contenuto di ogni file zip che trova. Ma il modo in cui lo fa è semplicemente vedere se il nome del file termina in .zip o .ZIP. E' un buon modo questo? Nel senso, volendo posso cambiare estensione al file anche mettendoci un .avi, ma sempre un archivio resta...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.