αƞjiβ
αƞjiβ

Reputation: 3256

Make a POST request to webservice

I am trying to make a post request to the webservice as it only accept the post request. I have a code as

try {
        URL url = new URL(createBookUrl + "?bookInfo=" + jsonStr);
        BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
        String inputLine = in.readLine();
        in.close();
        BookCreateResponse bookCreateResponse = new BookCreateResponse ();
        ObjectMapper mapper = new ObjectMapper();
        bookCreateResponse = mapper.readValue(inputLine, new TypeReference<BookCreateResponse>(){});
        System.out.println(bookCreateResponse );
    } catch (Exception ex) {
        log.error(ex.getMessage());
    }

Right now I am getting error

Server returned HTTP response code: 405 for URL: .....

Upvotes: 0

Views: 77

Answers (1)

DevOps85
DevOps85

Reputation: 6523

You can try with this:

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;

    private HttpClient client;
    private HttpPost requestPost;

    client = HttpClientBuilder.create().build();


    requestPost = new HttpPost(url+params);
    HttpResponse response = client.execute(requestPost);
    HttpEntity entiry = response.getEntity();
    responseString = EntityUtils.toString(entiry, "UTF-8");

Upvotes: 1

Related Questions