Я создал TCP-клиент с помощью Apache Mina. Я добавил цикл while для постоянной проверки работоспособности порта. Как только соединение установлено на стороне сервера, петля разрывается и соединение устанавливается. я получаю сеанс из будущего и использую его для общения. Есть лучший способ сделать это. вместо цикла я могу попросить соединение подождать, пока оно не будет установлено.
while(true){
try {
ConnectFuture future = ioConnector.connect(new InetSocketAddress(Port),
new TriggerReceiverHandler(), SOCKET_CONFIG);
System.out.println("Message Receiver started and listening on port "+ Port);
Thread.sleep(1000);
session = future.getSession();
if(session != null)
break;
} catch (InterruptedException e) {
e.printStackTrace();
}catch(Exception ce){
if(ce.getCause() instanceof ConnectException)
System.out.println("Retrying connection");
}
}
Другой вопрос: если сервер не работает, и я хочу, чтобы сервер продолжал ждать соединения до тех пор, пока он не включится, что мне делать?