0
私のクライアントソケットがIOExceptionに落ち続ける理由を理解できません。 IOExceptionに落ちたときに私のソケットを再作成して、再び例外になるまでそれが再び働くでしょう...javaクライアント側でソケットを開く
コードは、私の電気設備から常にipコントローラを読み出すべきです。私はサーバー側の何かを変更することはできません。私はそれに接続し、何かが起こったときにそれはポートに投稿し、私はそれを読むことができるようにしたい。
この
は、私はそれがはるかに良いコーディングからworkesデータ while(true){
try {
DataInputStream din=new DataInputStream(knxC.clientSocket.getInputStream());
BufferedReader br = new BufferedReader(new InputStreamReader(din));
String[] str=br.readLine().split("");
System.out.println(Arrays.toString(str));
} catch (IOException e) {
try {
knxC.clientSocket = new Socket(knxC.IP, knxC.PORT);
} catch (UnknownHostException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
} catch(NullPointerException nex){
try {
knxC.clientSocket = new Socket(knxC.IP, knxC.PORT);
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
を読み出すオープニングソケットコード
public KnxController(){
try{
System.out.println("Server started");
clientSocket = new Socket(IP, PORT);
outToServer = new DataOutputStream(clientSocket.getOutputStream());
} catch (UnknownHostException e) {
System.out.println("UnknownHostException: kan knx niet vinden");
} catch (IOException e) {
System.out.println("IOException knxcontroller: kan geen data sturen");
}
とここにあります。 これを解決する方法についての助けをいただければ幸いです。
ないKNX規格に精通を開く
それは素晴らしい答えです、実際に通信可能なビットがあります。 –
"IOExceptionに落ちる" - > _thrown_であるIOExceptionのスタックトレース+例外メッセージを投稿してください –