Невозможно прочитать данные с весов с помощью соединения через сокет Java [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Невозможно прочитать данные с весов с помощью соединения через сокет Java [закрыто]

Сообщение Anonymous »

Я пытаюсь прочитать данные с весов через соединение TCP с использованием сокетов Java. Он работает только тогда, когда компьютер и машина имеют одну и ту же подсеть. Я хочу работать без одной и той же подсети. Когда я развертываю сервер Tomcat, он сравнивается с динамическим IP-адресом сервера 171.x.x.x и статическим IP-адресом машины 192.x.x.x, которые находятся в другой подсети, это не работает. .
Ошибка:

Произошло исключение ввода-вывода: истекло время ожидания соединения: gotockopt
java.base/sun.nio.ch.Net.connect0(собственный метод) по адресу java.base/sun.nio.ch.Net.connect(Net.java:589) по адресу java.base/sun.nio.ch .Net.connect(Net.java:578) по адресу java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:583) по адресу java.base/java.net.SocksSocketImpl.connect(SocksSocketImpl.java:327
на java.base/java.net.Socket.connect(Socket.java:751)
на com.weight.putty .ServiceImpl.WeightServImpl.readData(WeightServImpl.java:22)
at com.weight.putty.Controller.WeightController.getData(WeightController.java:32)

Вот фрагмент кода, который я использую:
try (Socket socket = new Socket()) {
//Here I pass weight machine ipadress and port
socket.connect(new InetSocketAddress(ipAddress, port), 10000); //Exception occurs here
socket.setSoTimeout(5000);

InputStream inputStream = socket.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line = reader.readLine();

if (line != null) {
return line.trim();
} else {
return "No data received from the server.";
}
} catch (UnknownHostException e) {
return "The IP address could not be determined. Please check the IP address.";
} catch (SocketTimeoutException e) {
return "Connection timed out: " + e.getMessage();
} catch (IOException e) {
e.printStackTrace();
return "IOException occurred: " + e.getMessage();
} catch (Exception e) {
e.printStackTrace();
return "Unexpected error: " + e.getMessage();
}
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... munication
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»