Get HTTP code from org.apache.http.HttpResponse

Use HttpResponse.getStatusLine(), which returns a StatusLine object containing the status code, protocol version and "reason".


I have used httpResponse.getStatusLine().getStatusCode() and have found this to reliably return the integer http status code.


httpResponse.getStatusLine().getStatusCode()

A example will be as below,

        final String enhancementPayload ="sunil kumar";
        HttpPost submitFormReq = new HttpPost("https://bgl-ast/rest/service/form/form-data");
        StringEntity enhancementJson = new StringEntity(enhancementPayload);
        submitFormReq.setEntity(enhancementJson);
        submitFormReq.setHeader("Content-Type", "application/xml");

        HttpResponse response = httpClient.execute( submitFormReq );
        String result = EntityUtils.toString(response.getEntity());
        System.out.println("result "+result);
        assertEquals(200, response.getStatusLine().getStatusCode());