Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312

    jboss bin directory e upload file con servlet

    Buonasera,
    sto cercando di effettuare l'upload di un file su un server tramite jsp/servlet e utilizzando le librerie o'reilly cos.jar. Questo è il codice della servlet:
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    MultipartRequest multi = new MultipartRequest(request,"C:\\...\\jboss...\\ROOT. war",20000000);

    File file = multi.getFile("datafile");

    String fileName = multi.getFilesystemName("datafile");

    File dest = new File(fileName);
    FileInputStream source = new FileInputStream(file);
    FileOutputStream destination = new FileOutputStream(dest);

    FileChannel sourceChannel = source.getChannel();
    FileChannel destinationChannel = destination.getChannel();

    long dimension = sourceChannel.size();
    sourceChannel.transferTo(0, dimension, destinationChannel);
    source.close();
    destination.close();
    sourceChannel.close();
    destinationChannel.close();
    response.sendRedirect("index.jsp");

    }
    Tutto funziona correttamente ma mi ritrovo una copia del file anche nella cartella bin di jboss. Come mai?

    Un'ultima cosa, vorrei salvare i miei file nella cartella ROOT.war di jboss senza utilizzare il path completo in modo che quando andrò a deployare sul server non devo modificare il codice, è possibile?

    Grazie in anticipo.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312
    Scusate, mi sa che ho capito...
    possibile che basti solo la prima riga del mio codice?
    cioè:
    MultipartRequest multi = new MultipartRequest(request,"C:\\........ROOT.war",20 000000);

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    dipende da dove dici di memorizzare il file. O vai a mettere un path assoluto oppure il file viene scritto nel path di esecuzione (in questo caso bin).
    In questi casi è sempre buona norma avere una cartella dedicata all'interno della resource di progetto, in modo da essere sicuri di avere accesso alla locazione

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312
    Allora,
    innanzitutto grazie. Dalla tua risposta deduco che basti solo la prima riga, me lo confermi? Anche perchè feci già questa domanda anni fa proprio io su questo forum...scusatemi ma l'avevo rimosso.
    Il problema che questi file devono essere accessibili tramite browser ed ho notato che i file sono leggibili (http://localhost:8080/nomefile) soltanto se li metto nella ROOT.war di jboss. Qualche suggerimento a riguardo?

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    allora non te lo confermo, perché onestamente non ne sono sicura.
    Quanto alla disponibilità mi viene qualche dubbio perché la root war è cancellata ad ogni deploy

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312
    Ok,
    allora dove si può mettere un file che può essere visibile tramite browser con jboss? In rete non riesco a trovare nulla a riguardo.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    tecnicamente perché ogni web application rende visibile l'intera web root, quindi devi avere una web root (non un war) dentro cui piazzare i file

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312
    Ma questa web root in jboss 5.1.0 dove si trova? Cmq ho fatto delle prove e la cartella ROOT.war non elimina i file al successivo deploy.

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    prova a fare undeploy e poi deploy.

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    312
    vabbè ma alla fine come dovrei fare? Io da eclipse faccio publish on server...e fa tutto in automatico. Dove si trova questa web content che dici?

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.