Q:

What's the recommended way to get the HTTP response as a String when using Apache's HTTP Client? 

I've just begun using Apache's HTTP Client library and noticed that there wasn't a built-in method of getting the HTTP response as a String.  I'm just looking to get it as as String so that i can pass it to whatever parsing library I'm using. 
What's the recommended way of getting the HTTP response as a String?  Here's my code to make the request:
public String doGet(String strUrl, List<NameValuePair> lstParams) {

    String strResponse = null;

    try {

        HttpGet htpGet = new HttpGet(strUrl);
        htpGet.setEntity(new UrlEncodedFormEntity(lstParams));

        DefaultHttpClient dhcClient = new DefaultHttpClient();

        PersistentCookieStore pscStore = new PersistentCookieStore(this);
        dhcClient.setCookieStore(pscStore);

        HttpResponse resResponse = dhcClient.execute(htpGet);
        //strResponse = getResponse(resResponse);

    } catch (ClientProtocolException e) {
        throw e;
    } catch (IOException e) {
        throw e;
    }

    return strResponse;

}

A:

You can use EntityUtils#toString() for this. 
// ...
HttpResponse response = client.execute(get);
String responseAsString = EntityUtils.toString(response.getEntity());
// ...

A:

You need to consume the response body and get the response:
BufferedReader br = new BufferedReader(new InputStreamReader(httpresponse.getEntity().getContent()));

And then read it:
String readLine;
String responseBody = "";
while (((readLine = br.readLine()) ! = null)) {
  responseBody += "\n" + readLine;
}

The responseBody now contains your response as string. 
(Don't forget to close the BufferedReader in the end: br.close())

