Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    37

    output servlet byte[], input applicazione ArrayList

    Ciao ragazzi, ho un problema con la mia servlet:
    ho una servlet che crea al suo interno un' array di immagini, quando ha finito tutte le sue elaborazioni, trasforma questo ArrayList in un byte array e lo invia tramite ServletOutputStream al chiamante.
    La mia applicazione chiamante è un'applicazione java che ricevendo dalla servlet, legge i byte che gli sono stati inviati ma poi non sò come trasformare questi byte in un ArrayList per poter accedere alle immagini che conteneva...
    spero di essere stato abbastanza chiaro.
    aspetto vostre notizie :-)

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    devi serializzare l'array. Di per sé ArrayList è già serializzabile, devi essere sicuro che lo sia anche il contenuto e allora non farai altro che inviare su buffer il contenuto di ogni oggetto (dimensionando opportunamente i blocchi) (in soldoni fai un ciclo sull'arraylist e butti su buffer le immagini ad una ad una).

    Puoi fare anche una cosa anziché inviare un array serializzato, fai:

    1. butta le n immagini in una cartella temporanea tmpdir (creata ad esempio sotto /tmp)
    2. fai un tar (zip o quello che vuoi) del contenuto di tmpdir
    3. invia un unico file, che è appunto il file compresso
    4. cancella tmpdir e il file compresso creato

    in questo modo:
    1. se non devi elaborare le immagini non le carichi in memoria
    2. non hai il problema di serializzare un array di elementi
    3. risparmi banda perché invii un solo file compresso anziché un array list

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    37
    hai un esempio di come posso ricevere un tar o uno zip dal mio client pertanto decomprimere e poter vedere le mie immagini??
    da servlet a client passo un'array di byte giusto? facendo appunto servletOutputStream.write(byte[] b).
    come faccio nel client a traformare tale array di byte ricevuti in un oggetto tar o zip???

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    37
    sono riuscito a creare il file zip.
    ora come posso inviarlo??
    come può il client riceverlo ed estrarre le immagini contenute??

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    se riesci ad inviare/ricevere un file .jpg, che differenza c'è nell'invio di un file .zip?

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.