RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Java
Expertise: Intermediate
Nov 18, 2019

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
Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date