Buenas,
Yo creo que la clave esta en el tratamiento del encoding hecho por los
sockets. Ya se que has hecho algo, pero tienes que revisar mejor ese tema:
https://www.google.com/search?q=java...%20utf-8&rct=j
Por otro lado en la captura pones -Dfile.encodig sin la n, aunque supongo que eso sera un error puntual.
Un saludo