Imdad Sarkar
Imdad Sarkar

Reputation: 1235

How to handle exception when web service is not available in java

I need to handle an exception when web service is not available. In my app i am requesting an web service what will return me an XML data. My app is working correctly when web service is available. But when the web service is unavailable then my app become crash.how to catch that exception in java. Please note that i am developing an app for android.

when the web service is unavailable the it looks likes the following image enter image description here

Upvotes: 2

Views: 3974

Answers (2)

Imdad Sarkar
Imdad Sarkar

Reputation: 1235

This is how i have solved that problem with the help of Krishna's code

public static boolean isAvailable(String link){

        boolean available = false; 

        URL url = null;
        try {
            url = new URL(link);
        } catch (MalformedURLException e) {

            e.printStackTrace();
        }
        HttpURLConnection connection = null;
        try {
            connection = (HttpURLConnection) url.openConnection();
        } catch (IOException e1) {

        }
        connection.setRequestProperty("Connection", "close");
        connection.setConnectTimeout(100000); // Timeout 100 seconds
        try {
            connection.connect();
        } catch (IOException e) {

        }

        try {
            if (connection.getResponseCode() == 200) {
             //   return true;
                available = true;
            }
            else 
                available = false;
                //return false;
        } catch (IOException e) {

            e.printStackTrace();
        }

        return available;
}

Upvotes: 1

Gopikrishnan cs
Gopikrishnan cs

Reputation: 995

with this you can check webservice available or not

public void isAvailable(){

    // first check if there is a WiFi/data connection available... then:

    URL url = new URL("URL HERE");
    HttpURLConnection connection = (HttpURLConnection) url.openConnection();
    connection.setRequestProperty("Connection", "close");
    connection.setConnectTimeout(10000); // Timeout 10 seconds
    connection.connect();

    // If the web service is available
    if (connection.getResponseCode() == 200) {
        return true;
    }
    else return false;
}

Upvotes: 2

Related Questions