Recommended solutions based on your search
Adjust the timeout barrier so that its more flexible on network delays. It is very important to consider doing that especially when your server application will run in a remote machine. Other than that, avoid whatever causes delays in network.
This exception emerges when a blocking operation of the two, an accept or a read, is blocked for a certain amount of time, called the timeout.
Solutions on the web
java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)[na:1.8.0_121]