Bonjour

Je rencontre un problème pour lire mes données json depuis une url via une adresse en locahost crée par wamp server.

Mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public class JSONParser {
    String data = "";
    JSONArray jsonArray = null;        
    InputStream is = null;
 
    public JSONParser(){}
 
    // Download json data from url
    public JSONArray getJSONFromUrl(String strUrl) throws IOException{
        URL url = new URL(strUrl);
 
        System.setProperty("http.keepAlive", "false");
        HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); // Creating http connection to communicate with url
 
       try {
 
           urlConnection.connect();          
 
           is = urlConnection.getInputStream();
 
           BufferedReader br = new BufferedReader(new InputStreamReader(is));
           StringBuffer sb  = new StringBuffer();
 
           String line = "";
 
           while( ( line = br.readLine())  != null){
               sb.append(line);
           }
 
           data = sb.toString();
           br.close();
           jsonArray = new JSONArray(data);
 
       }catch(Exception e){
           Log.d("Exception while downloading url", e.toString());
       }finally {
           is.close();
           urlConnection.disconnect();
       }           
        return jsonArray;
    }
}
Mon erreur est à la ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
is = urlConnection.getInputStream();
 
java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
Sachant que ce code fonctionne car il y a quelques semaines je l'ai utilisé via un vrai service php situé sur un serveur distant et je n'avais aucun problème. Je pense que c'est du au fait que ça soit en local j'ai déjà du changer mon url d'appel du service json car htt://localhost.. ne fonctionnait pas il fallait que je transforme localhost dans Run configuration (de netbeans sur mon projet qui contien mon service json) pour obtenir cette url :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
http://192.168.1.16/tests/PhpProject1/connectBDD.php
L'adresse ip is est l'adresse ipv4(préféré) sur mon ordinateur quand je fais un ipconfig /all dans cmd.exe
Je précise quand même que j'ai bien mis la permission android pour accepter des connexion internet dans mon manifest. J'ai également essayé cette ligne de code qu'il faut appelé avec le url.openConnection() qui est censée résoudre le problème mais ça ne fonctionne pas :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
System.setProperty("http.keepAlive", "false");
Merci d'avance pour votre aide je suis bloqué et je n'arrive pas à trouver de solution à mon problème.