PDA

View Full Version : Java, HTTP ed immagini


Kaldais
05-06-2006, 13:32
Piccolo quesito da porre, riguardante socket e l'invio di immagini al browser. Premessa: il server web è perfettamente funzionante e fa uso di questa funzione per spedire i file dal server al browser:

public void sendFile(File file){
try{
InputStream inputFile = new FileInputStream(file.getAbsolutePath());

int n;
while ((n = inputFile.read(buffer)) > 0) {
output.write(buffer, 0, n);
}
}

catch(Exception e){
Server.log.print("exception: "+e.getMessage());
}
}

Il problema è semplice, tutto va a meraviglia per qualsiasi file inviato, l'unico grattacapo è con i file d'immagine. Ho cercato di tutto, ma con scarsi risultati. A cosa è dovuto?

Dimenticavo, ovviamente tutti gli header sono stati inviati, eccone uno tipo:

Server: Hamster
Date: Mon Jun 05 14:30:39 CEST 2006
Content-length: ...
Last Modified: ...
Content-type: image/jpeg

...

Kaldais
06-06-2006, 17:40
Continuo a provare con qualsiasi file, binario e non, e continua ad andare a meraviglia. Ho notato che il problema non è solo per le jpeg, ma anche per qualsiasi file di tipo immagine.

Sbaglio qualcosa o devono essere trasferite in un certo modo?

Kaldais
07-06-2006, 15:42
Risolto il problema, era una cazzata .. come volevasi dimostrare.

Praticamente tra l'header HTTP ed il file c'erano DUE spazi, e non UNO. Se questo non dava nessun problema per file di testo ed altri file binari alle immagini invece dava un pò di fastidio.