Я пытаюсь прочитать данные с весов через соединение 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
Невозможно прочитать данные с весов с помощью соединения через сокет Java [закрыто] ⇐ JAVA
Программисты JAVA общаются здесь
1734940149
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();
}
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79286753/unable-to-read-data-from-weighing-scale-using-java-socket-communication[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия