Estou desenvolvendo um client para acessar websevice DELETE , porém esta dando erro de :
java.net.ProtocolException: DELETE does not support writing
Estou utilizando o POSTMAIN, retorna status 200.
segue abaixo o meu código:
Client Android:
public void apagarWebServiceDelete(Long id) {
try {
URL url;
HttpURLConnection connection = null;
//Create connection
url = new URL(“http://192.168.0.120:8081/WebServiceAndroid/web/” + id);
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("DELETE");
connection.setRequestProperty("Content-Type",
"application/json");
connection.setUseCaches(false);
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setConnectTimeout(30000);
//Send request
DataOutputStream wr = new DataOutputStream(
connection.getOutputStream());
wr.flush();
wr.close();
//Get Response
InputStream is = connection.getInputStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer response = new StringBuffer();
while ((line = rd.readLine()) != null) {
response.append(line);
response.append('\r');
}
rd.close();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
Código do Server:
@RequestMapping(value = “/{id}”, method = RequestMethod.DELETE)
public Response deletaPessoas(@PathVariable Long id) {
if(true) {
return Response.Ok(“Carro deletado com sucesso”);
} else {
return Response.Error(“Erro ao deletar carro”);
}
}