Perchè non dovrebbe andar bene l'ultima riga? Quella riga consente al server di ricevere i dati dal client.

La mia perplessità è che tu cerchi di inviare un oggetto File: quell'oggetto rappresenta un "puntatore ad un file" locale al client... quello che dovresti fare tu è far leggere il file al client, impacchettarlo in un messaggio come array di byte e inviare questo al server.

Dall'altro lato, il server riceve il pacchetto, estrae l'array di byte e lo scrive utilizzando un FileOutputStream.

La cosa è semplicissima.


Ciao.