Follow сообщение об ошибке отображается, когда я использую свой клиент для подключения к сокету сервера
java.net.ConnectException: Connection refused: connect
Я попытался найти все вопросы в Stackoverflow об этой ошибке, но я не смог решить эту проблему.
Это мой код подключения к серверу:
String id1 = "", id2 = "";
String pw1 = "", pw2 = "";
String msgin1 = "";
String msgin2 = "";
String prevmsgin1 = "";
String prevmsgin2 = "";
int login1 = 0, login2 = 0;
try
{
ss = new ServerSocket(1009);
ss1 = new ServerSocket(1099);
s = ss.accept();
s1 = ss1.accept();
din1 = new DataInputStream(s.getInputStream());
din2 = new DataInputStream(s1.getInputStream());
dout1 = new DataOutputStream(s.getOutputStream());
dout2 = new DataOutputStream(s1.getOutputStream());
while(!msgin1.equals("exit") || !msgin2.equals("exit"))
{
msgin1 = din1.readUTF();
msgin2 = din2.readUTF();
if(msgin1.startsWith("L#") == true && login1 == 0) //login prefix L#
{
msgin1 = msgin1.substring(2);
String[] parts = msgin1.split("#"); //msgin1 split by #
id1 = parts[0];
pw1 = parts[1];
if(fcs.Search(id1, pw1) == 1) //search DB and finds same credential
{
dout1.writeUTF("LOK");
login1 = 1;
}
if(fcs.Search(id1, pw1) == 9) //search DB and find not same credential
{
dout1.writeUTF("LNO");
}
}
if(msgin2.startsWith("L#") == true && login2 == 0) //login prefix L#
{
msgin2 = msgin2.substring(2);
String[] parts = msgin2.split("#"); //msgin2 split by #
id2 = parts[0];
pw2 = parts[1];
if(fcs.Search(id2, pw2) == 1) //search DB and finds same credential
{
dout2.writeUTF("LOK");
login1 = 1;
}
if(fcs.Search(id2, pw2) == 9) //search DB and finds not same credential
{
dout2.writeUTF("LNO");
}
}
if(login1 == 1 && login2 == 1)
{
if(msgin2 != prevmsgin2) //if new message received from client 2 -> send to client 1
{
dout1.writeUTF(msgin2);
prevmsgin2 = msgin2;
}
if(msgin1 != prevmsgin1) //if new message received from client 1 -> send to client 2
{
dout2.writeUTF(msgin1);
prevmsgin1 = msgin1;
}
}
}
}
catch(Exception e)
{
}
А это мой код подключения к клиенту:
try{
s=new Socket("127.0.0.1",1009);
din = new DataInputStream(s.getInputStream());
dout = new DataOutputStream(s.getOutputStream());
}catch(Exception e)
{
JOptionPane.showMessageDialog(null, "Error3:"+e, "InfoBox: ERROR1", JOptionPane.INFORMATION_MESSAGE);
}
Этот код выполняется на локальном хосте, и я открыл все мои порты в Windows Дополнительные настройки Защитника.
Пожалуйста, помогите мне ... Я действительно нуб к Java языку.