The HTTP specification requires that objects covering objects, such as POST and PUT, be redirected only after human intervention. HttpClient fulfills this requirement by default ..
10.3 Redirection 3xx This class of status code indicates that further action needs to be taken by the user agent in order to fulfill the request. The action required MAY be carried out by the user agent without interaction with the user if and only if the method used in the second request is GET or HEAD.
...
If the 302 status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued.
You can use a custom redirection strategy to limit the restrictions on automatic redirection if necessary.
DefaultHttpClient client = new DefaultHttpClient(); client.setRedirectStrategy(new LaxRedirectStrategy()); Executor exec = Executor.newInstance(client); String s = exec.execute(Request .Post("http://localhost:9999/food2go/booking/placeOrder") .bodyForm(...)).returnContent().asString();
source share