private void sendDataTcp(int dataServerPort, String xmlEmployees) throws IOException { ServerSocket serverSocket = new ServerSocket(dataServerPort); serverSocket.setSoTimeout((int) SECONDS.toMillis(100)); boolean isTimeExpired = false; while (!isTimeExpired) { try { Socket socket = serverSocket.accept(); // Blocking call! serialize(xmlEmployees, socket.getOutputStream()); socket.close(); } catch (SocketTimeoutException e) { System.out.println( "[WARNING] ----------------------------------------- \n" + "[WARNING] Waiting time expired... Socket is closed."); isTimeExpired = true; continue; } } serverSocket.close(); }