http サーバーが正常に応答しているかどうかを確認する方法を作成しました。私はApacheコンポーネントを使用しています。
private static int CheckAvailabilityHttp(String pHostName, int pPort)
{
try {
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(String.format("http://%s:%s",pHostName,pPort));
HttpResponse response = httpClient.execute(httpGet);
int status = response.getStatusLine().getStatusCode();
if (HttpStatus.SC_OK == status) { // HttpStatus.SC_OK is 200 and status is 200
return ServerStatuses.SUCCESS;
}
} catch (MalformedURLException e1) {
e1.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return ServerStatuses.FAILED;
}
問題は比較行にあります。
if (HttpStatus.SC_OK == status)
両方 (HttpStatus.SC_OK とステータス変数) が 200 であっても、条件内に入らず、例外もスローしません。
私が間違っていることは何ですか??
お時間をいただきありがとうございます!