Je veux envoyer { "name": "super-utilisateur", "status": 1} mais quand j'envoie je reçois cette erreurEnvoi d'un entier http requête PUT en java
Exception in thread "main" java.lang.NullPointerException
at java.io.Reader.<init>(Reader.java:78)
at java.io.InputStreamReader.<init>(InputStreamReader.java:72)
at com.service.RoleService.updateRole(RoleService.java:145)
at com.service.RoleService.main(RoleService.java:176)
ici est le code
URL url = new URL("http://localhost:31109/user/role/"+role_id);
HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection();
httpConnection.setDoOutput(true);
httpConnection.setRequestMethod("PUT");
httpConnection.setRequestProperty("Content-Type", "application/json");
httpConnection.setConnectTimeout(15000);
String input = "{\"name\":\""+name+"\",\"status\":"+status+"}";
System.out.println(input);
OutputStream outputStream = httpConnection.getOutputStream();
outputStream.write(input.getBytes());
outputStream.flush();
if(httpConnection.getResponseCode() !=200){
String error_resp;
BufferedReader error_responseBuffer = new BufferedReader(new InputStreamReader(
(httpConnection.getErrorStream())));
while((error_resp = error_responseBuffer.readLine()) != null){
System.out.println("Error responsecode => "+httpConnection.getResponseCode()+"error => "+error_resp);
output = new JSONObject(error_resp);
}
}else {
BufferedReader responseBuffer = new BufferedReader(new InputStreamReader(
(httpConnection.getInputStream())));
String httpresponse;
StringBuilder content = new StringBuilder();
while((httpresponse = responseBuffer.readLine()) != null){
content.append(httpresponse);
}
output = new JSONObject(content.toString());
}
httpConnection.disconnect();
mais quand j'envoie { "name": "super-utilisateur", "status": "1"} la demande est ok, mais l'API a une validation qui exige qu'il soit envoyé comme un entier et le rejette. et je ne peux pas changer l'api.
si votre code fonctionne avec une entrée, mais pas un autre, cela signifie que votre code est correct, le problème est l'API que vous envoyez à – nafas
Votre code ne montre pas où vous créez le lecteur et obtenir le NullPointerException – ControlAltDel
est l'erreur que vous avez montré client ou côté serveur? qu'est-ce que l'API s'attend à être un nombre entier? avez-vous le contrôle du côté serveur? vous devriez améliorer votre question – nandsito