You definitely don't want to use ObjectOutputStream
- that will use binary serialization that your telnet server won't be expecting.
It would be best to create an OutputStreamWriter
:
// Adjust the encoding to whatever you want, but you need to decide...
Writer writer = new OutputStreamWriter(s.getOutputStream(), "UTF-8");
writer.write(myMessageString);
writer.flush();
The flush
call may well be what was missing before - depending on exactly what TelnetClient
does, it may be buffering the data until you flush the stream.