Срочный курс помощи в получении данных на Java, TCP / IP - PullRequest
0 голосов
/ 21 января 2012

У меня проблемы с получением простого типа данных String, данные отправляются с IP 10.10.11.5 через порт 1180 (Labview отправляет пакет). Когда я пытаюсь этот код, я получаю ошибку соединения. Сообщение об ошибке:

 java.io.IOException: ConnectException: connect refused
 in virtual method #12 of com.sun.squawk.platform.posix.GCFSocketsImpl(bci=233)
 at com.sun.squawk.io.j2me.socket.Protocol.open(bci=104)
 in static method #4 of javax.microedition.io.Connector(bci=125)
 at javax.microedition.io.Connector.open(231)
 at javax.microedition.io.Connector.open(193)
 at javax.microedition.io.Connector.open(177)
 atedu.wpi.first.wpilibj.templates.RobotTemplate.robotInit(RobotTemplate.java:33)
 at edu.wpi.first.wpilibj.IterativeRobot.startCompetition(IterativeRobot.java:74)
 at edu.wpi.first.wpilibj.RobotBase.startApp(RobotBase.java:156)
 in virtual method #10 of javax.microedition.midlet.MIDlet(bci=17)
 at javax.microedition.midlet.MIDletTunnelImpl.callStartApp(64)
 at com.sun.squawk.imp.MIDletMainWrapper.main(110)
 in virtual method #95 of com.sun.squawk.Klass(bci=25)
 at com.sun.squawk.Isolate.run(1506)
 at java.lang.Thread.run(231)
 in virtual method #47 of com.sun.squawk.VMThread(bci=42)
 in static method #3 of com.sun.squawk.VM(bci=6)

Заранее спасибо за советы и помощь!

SocketConnection socketConnect;
InputStream myInputStream;
Datagram datagram;
DatagramConnection dataConnect;
String message;
DataInputStream stream;

public void robotInit() {

    message = null;
    try {
    socketConnect = (SocketConnection) Connector.open("socket://10.10.11.5:1180");
    myInputStream = socketConnect.openInputStream();
    }
    catch (IOException ex) {
        ex.printStackTrace();
    }
    System.out.println(message);
}

EDIT: Наша установка проста, но сложна. Код, который вы видите, помещен в cRIO, он подключен к нашему ноутбуку через кабель Ethernet. На Labtop у нас есть Labview, генерирующий пакеты данных, которые мы отправляем через порт 1180 на IP-адрес 10.10.11.2 (IP-адрес cRIO).

1 Ответ

0 голосов
/ 21 января 2012

Я не думаю, что это «ошибка программирования» - я почти уверен, что проблема в «конфигурации сети».

Проверьте наличие брандмауэров между вашей программой-слушателем (сервером) и клиентом.

особенно проверьте брандмауэр Windows.

Если вы перебираете маршрутизатор компании, вам может потребоваться, чтобы сетевой администратор вашего сайта "пробил дыру":)

...