Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    23

    upload file da form html - jsp/java

    Ciao,
    sto cercando di eseguire l'upload di più file da un Form Http.
    Ho trovato che tramite il pacchetto commons.fileUpload di Apache posso gestire il tutto abbastanza agevolmente, dato che dovrebbe permettermi di processare l'oggetto 'request' in modo da ottenere una List di oggetti del Form... così:


    boolean isMultipart = FileUpload.isMultipartContent(request);

    if (isMultipart)
    {
    FileItemFactory factory = new DiskFileItemFactory();
    ServletFileUpload upload = new ServletFileUpload(factory);

    List items = upload.parseRequest(request);*/

    // se stampo la lunghezza della lista ottengo SEMPRE 0
    out.println( items.size(); )
    while(itr.hasNext())
    {
    .....

    Il problema è che non riesco a capire perché perché mi viene SEMPRE restituito una lista vuota.
    L'home page del pacchetto utilizzato è http://commons.apache.org/fileupload/apidocs/index.html

    Sapete darmi indicazioni?

    Grazie..
    -_- faciolo

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    69
    Ciao, ti rispondo velocemente e su due piedi prima di andare a pranzo.

    1) Sei sicuro che venga effettuato un submit prima di aver eseguito il codice da te postato?
    2) Non riesco a capire come il metodo parseRequest sia in grado di riconoscere il nome del campo del form in cui sono contenuti gli indirizzi dei file da uploadare.

    Spero di averti dato qualche spunto!

    Bye

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    23
    Dunque,
    grazie per gli spunti, purtroppo però credo che non siano sufficienti...
    ti rispondo per punti:

    1) Sono sicuro che l'oggetto request sia in sessione tramite la relativa submit, dato che il codice passa l' if(isMultipart) con successo.

    2)Se non ho capito male il metodo parseRequest esegue un parsing della richiesta, prendendo tutti i campi del form che è stato sottomesso... dopo io potrò processare i vari ITEM eseguendo, eventualmente, un controllo del tipo:
    ------------------------------------------
    FileItem item = (FileItem) iter.next();
    if (item.isFormField()) //allora sto trattando un campo di testo, un checkbox..etc
    {
    String name = item.getFieldName();
    String value = item.getString();
    }
    //OPPURE
    if ( ! item.isFormField()) //Non è un Campo del form, ma un File
    {
    String name = item.getFieldName();
    String value = item.getString();
    // ad esempio posso accedere alle dimensioni
    long sizeInBytes = item.getSize;
    }

    -------------------------------------

    RIPETO... tutto ciò se ho capito bene il funzionamento descritto sul sito relativo al pacchetto commons.uploadFile postato sopra..

    Inoltre preciso che quello descritto all'inizio della discussione è il primo accesso alla request che eseguo, in seguito alla submit...

    Altre idee???
    -_- faciolo

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.