Java Networking Connection Refused: Connect
Java Networking “Connection Refused: Connect” problem will get in normal production environments. Here, we are mentioning our best to problem with answer and steps to solve the problem.
In the below mentioned source code what it is running in the client and server instances.
Server:
Client:
We got the exception as Java Networking “Connection Refused: Connect”.
Answer:
This problem comes under the following situations:
1. Client and Server, either or both of them are not in network.
2. Server is not running.
3. Server is running but not listening on port, client is trying to connect.
4. Firewall is not permitted for host-port combination.
5. Host port combination is incorrect.
6. Incorrect protocol in Connecting String.
To solve the problem:
1. First you ping destination server. If that is pinging properly, then the client and server are both in network.
2. Try connecting to server host and port using telnet. If you are able to connect with it, then you're making some mistakes in the client code.
In the below mentioned source code what it is running in the client and server instances.
Server:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | import java.io.*; import java.net.*; public class Test { public static void main(String[] args) { final int PORT_NUMBER = 44574; while(true) { try { //Listen on port ServerSocket serverSock = new ServerSocket(PORT_NUMBER); System.out.println("Listening..."); //Get connection Socket clientSock = serverSock.accept(); System.out.println("Connected client"); //Get input BufferedReader br = new BufferedReader(new InputStreamReader(clientSock.getInputStream())); System.out.println(br.readLine()); br.close(); serverSock.close(); clientSock.close(); } catch(Exception e) { e.printStackTrace(); } } } } |
Client:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | import java.io.*; import java.net.*; public class TestClient { public static void main(String[] args) throws IOException { final int PORT_NUMBER = 44574; final String HOSTNAME = "xx.xx.xx.xx"; //Attempt to connect try { Socket sock = new Socket(HOSTNAME, PORT_NUMBER); PrintWriter out = new PrintWriter(sock.getOutputStream(), true); //Output out.println("Test"); out.flush(); out.close(); sock.close(); } catch(Exception e) { e.printStackTrace(); } } } |
We got the exception as Java Networking “Connection Refused: Connect”.
Answer:
This problem comes under the following situations:
1. Client and Server, either or both of them are not in network.
2. Server is not running.
3. Server is running but not listening on port, client is trying to connect.
4. Firewall is not permitted for host-port combination.
5. Host port combination is incorrect.
6. Incorrect protocol in Connecting String.
To solve the problem:
1. First you ping destination server. If that is pinging properly, then the client and server are both in network.
2. Try connecting to server host and port using telnet. If you are able to connect with it, then you're making some mistakes in the client code.