Home » Tip Bank » Java
  • Comment on this Article
Language: Java
Expertise: Intermediate
Nov 18, 2019



Building the Right Environment to Support AI, Machine Learning and Deep Learning


Handling BindException in Java

Port BindExceptions can occur if a port is already occupied by some other process and you try to use it again.

Below is a simple example that demonstrates this and the mechanisms involved.

import java.net.*;
import java.io.*;

public class HandleBindException
   public static void main(String args[])
      HandleBindException handleBindException = new HandleBindException();
   private void proceed(){
      final int BINDING_PORT = 5666 ;
      ServerSocket firstServerSocket = null, secondServerSocket = null;
      try {
         firstServerSocket = new ServerSocket(BINDING_PORT);
         secondServerSocket = new ServerSocket(BINDING_PORT);
      } catch (BindException e) {
         System.out.println("BindException: " + e);
         if (firstServerSocket == null)
            System.out.println("firstServerSocket is null. Further handling necessary.");
         if (secondServerSocket == null)
            System.out.println("secondServerSocket is null. Further handling necessary.");
      } catch (IOException ioe) {
         System.out.println("IOException: " + ioe);


Expected output:

[root@mypc]# java HandleBindException
BindException: java.net.BindException: Address already in use: JVM_Bind
secondServerSocket is null. Further handling necessary.

M S Sridhar
Submit a Tip
Browse "Java" Tips
Browse All Tips