IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Android Discussion :

Problème connexion base de données


Sujet :

API standards et tierces Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 33
    Par défaut Problème connexion base de données
    Bonjour. Je fais une application java qui permet d'acceder à une base de donnees contenant 4 écoles (base avec une table de 3 colonnes: id, nom et categorie)
    Mon programme me dit NullPointerException mais je ne vois pas d'ou vien cette erreur.
    Voici mon mainactivity qui est le programme principal:
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    package com.example.basedonnees;
     
     
    import java.io.BufferedReader;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
     
    import org.apache.http.NameValuePair;
    import org.json.JSONArray;
    import org.json.JSONException;
    import org.json.JSONObject;
     
    import android.app.ListActivity;
    import android.net.ParseException;
    import android.os.Bundle;
    import android.util.Log;
    import android.widget.ArrayAdapter;
    import android.widget.Toast;
     
     
    public class MainActivity extends ListActivity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            //setContentView(R.layout.main);
            String result = null;
            String probleme= null;
         InputStream is = null;
         JSONObject json_data=null;
         ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
         ArrayList<String> donnees = new ArrayList<String>();
     
         try{
     
     
         //commandes httpClient
     
            TheTask task= new TheTask();
     
            task.execute("http://10.0.2.2/ecoles/projet.php");
     
            is=task.Avoiris();
            Log.i("is=","" +is);
     
            probleme=task.entityStr;
            Log.i("entityStr=",""+probleme);
     
            //HttpClient httpclient = new DefaultHttpClient();
            /*HttpPost httppost = new HttpPost("http://127.0.0.1/ecoles/projet.php");
            Log.i("connect base","coucou");
            httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            Log.i("connect base","coucou1");
            HttpResponse response = httpclient.execute(httppost);
            Log.i("connect base","coucou2");
            HttpEntity entity = response.getEntity();
            is = entity.getContent();*/
     
     
         }
         catch(Exception e){
        	 	Log.i("taghttppost",""+e.toString());
     
     
                Toast.makeText(getBaseContext(),e.toString() ,Toast.LENGTH_LONG).show();
           }
     
     
         //conversion de la réponse en chaine de caractère
            try
            {
            	Log.i("connect base","coucou");
            	Log.i("is=",""+is);
            	Log.i("ok=","ok");
             BufferedReader reader = new BufferedReader(new InputStreamReader(is,"UTF-8"));
             Log.i("connect base","coucou1");
     
             StringBuilder sb  = new StringBuilder();
     
             String line = null;
     
             while ((line = reader.readLine()) != null) 
             {
             sb.append(line + "\n");
             }
     
             is.close();
     
             result = sb.toString();
     
            }
            catch(Exception e)
            {
             Log.e("tagconvertstr",""+e.toString());
            }
            //recuperation des donnees json
            try{
              JSONArray jArray = new JSONArray(result);
     
                 for(int i=0;i<jArray.length();i++)
                 {
     
                       json_data = jArray.getJSONObject(i);
                       donnees.add(json_data.getString("nom"));
                       //r.add(json_data.getString("categorie"));
     
                   }
                    setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, donnees));
                }
                catch(JSONException e){
                 Log.e("tagjsonexp",""+e.toString());
                } catch (ParseException e) {
                 Log.e("tagjsonpars",""+e.toString());
           }
     
        }
    }
    Et theTask qui me permet de me connecter au http en uitilisant asynctask:
    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
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    package com.example.basedonnees;
     
    import java.io.InputStream;
    import java.util.ArrayList;
     
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.NameValuePair;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.entity.UrlEncodedFormEntity;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.apache.http.util.EntityUtils;
     
    import android.os.AsyncTask;
    import android.util.Log;
    import android.widget.TextView;
     
    public class TheTask extends AsyncTask<String,String,String>
        {
    	private TextView textView;
    	public InputStream is;
    	public String entityStr;
     
     
    protected void onPostExecute(String result) {
        // TODO Auto-generated method stub
        super.onPostExecute(result);
        // update textview here
        textView.setText("Server message is "+result);
    }
     
    @Override
    protected void onPreExecute() {
        // TODO Auto-generated method stub
        super.onPreExecute();
    }
     
    public InputStream Avoiris() {
        return is;
    }
    @Override
    protected String doInBackground(String... params) {
    	ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
         try
            {
                HttpClient httpclient = new DefaultHttpClient();
                HttpPost method = new HttpPost(params[0]);
                Log.i("method=",""+method);
                method.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                HttpResponse response = httpclient.execute(method);
                HttpEntity entity = response.getEntity();
     
                if(entity != null){
                	Log.i("entity=","" +entity);
                	is = entity.getContent();
                	Log.i("is=",""+is);
                	Log.i("message1=","coucou");
                	entityStr=EntityUtils.toString(entity);
                    Log.i("message2=","coucou");
                    Log.i("entityString=","" +entityStr);
                    return entityStr;
                }
                else{
     
                    entityStr="No string.";
                    return entityStr;
                }
             }
             catch(Exception e){
            	 Log.i("entity=","cool5");
                 entityStr="Network problem";
                 return entityStr;
             }
     
     
    }
    }
    et en surplus, mon android manifest:
    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
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.example.basedonnees"
        android:versionCode="1"
        android:versionName="1.0" >
     
        <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="19" />
    	<uses-permission android:name="android.permission.INTERNET" />
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            <activity
                android:name="com.example.basedonnees.MainActivity"
                android:label="@string/app_name" >
     
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
     
     
        </application>
     
     
    </manifest>
    Pouvez-vous m'aider svp?

  2. #2
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 33
    Par défaut ?
    No answer?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 22/03/2010, 16h47
  2. Probléme connexion base de données
    Par Micke7 dans le forum iReport
    Réponses: 8
    Dernier message: 05/12/2008, 09h04
  3. Problème connexion base de données
    Par mathyass dans le forum Autres
    Réponses: 1
    Dernier message: 21/07/2008, 20h54
  4. Problème connexion base de données
    Par realkilla dans le forum ASP
    Réponses: 4
    Dernier message: 21/07/2008, 11h42
  5. Réponses: 3
    Dernier message: 27/04/2006, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo