Bonjour, voila j'ai une base de donnée et je souhaite rentrer les données de mon formulaire xml dedans mais au moment d'envoyer il me mes un nullpointerexception sur mon onclick, malgré sa je n'arrive pas a résoudre mon problème est ce que quelqu'un aurais une idée ? merci d'avance

voici mon rapport d'erreur logcat:

06-03 17:10:32.344: ERROR/AndroidRuntime(229): Uncaught handler: thread main exiting due to uncaught exception
06-03 17:10:32.374: ERROR/AndroidRuntime(229): java.lang.NullPointerException
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.google.android.bibax.bibax$1.onClick(bibax.java:52)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.View.performClick(View.java:2364)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.View.onTouchEvent(View.java:4179)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.widget.TextView.onTouchEvent(TextView.java:6541)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.View.dispatchTouchEvent(View.java:3709)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:884)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1659)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1107)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.app.Activity.dispatchTouchEvent(Activity.java:2061)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1643)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.view.ViewRoot.handleMessage(ViewRoot.java:1691)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.os.Handler.dispatchMessage(Handler.java:99)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.os.Looper.loop(Looper.java:123)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at android.app.ActivityThread.main(ActivityThread.java:4363)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at java.lang.reflect.Method.invokeNative(Native Method)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at java.lang.reflect.Method.invoke(Method.java:521)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
06-03 17:10:32.374: ERROR/AndroidRuntime(229): at dalvik.system.NativeStart.main(Native Method)

--------------------------------------------------------------------------

ma base de donnée:

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
package com.google.android.bibax;
 
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.content.ContentValues;
import android.database.SQLException;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
 
public class BDAcces {
//  variable  bdd
	private static final String CHICHA_TABLE = "chicha";
 
 
	private static final String DATABASE_NAME = "chicha_android";
 
	private static final int DATABASE_VERSION = 1;
 
	//requete creation bdd
	private static final String CREATE_CHICHA_TABLE ="CREATE TABLE chicha ("
	+"nom_chicha TEXT NO NULL,"
	+"numero_chicha INTEGER(10) NOT NULL,"
	+"codepostal_chicha INTEGER (5) NOT NULL,"
	+"ville_chicha TEXT (50) NOT NULL,"
	+"adresse_chicha VARCHAR(500) NOT NULL,"
	+"prix_chicha  VARCHAR(10000) NOT NULL,"
	+"description_chicha LONGTEXT NOT NULL,"
	+")";
 
 
 
 
	//je rajoute également trois attributs
	private final Context mCtx; 
	//contient les information sur l'environnement de mon application
	//class permettant de manager la creation,et la mise à jur de notre base
	public BDAcces(Context ctx) {
 
			 this.mCtx = ctx;
		 }
	private DatabaseHelper mDbHelper;
	//class d'action sur notre base
	private SQLiteDatabase mDb;
	private static final String TAG = "BDAcces";
	//J'ai vais maintenant créer ma classe DatabaseHelper qui est une extension de <a href="http://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html">SQLiteOpenHelper</a>
	private static class DatabaseHelper extends SQLiteOpenHelper {
 
	DatabaseHelper(Context context) {
	super(context, DATABASE_NAME, null, DATABASE_VERSION);//ouverture ou creation de la base si elle n'existe pas
	}
 
	@Override
	// methode qui est appelé quand on ouvre la base pour la première fois
	public void onCreate(SQLiteDatabase db) {
	db.execSQL(CREATE_CHICHA_TABLE);
 
	}
 
	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {//methode permettant une mise à jour de notre base de donnée
	Log.w(TAG, "Upgrading database from version " + oldVersion + " to "
	+ newVersion + ", which will destroy all old data");
 
	db.execSQL("DROP TABLE IF EXISTS "+CHICHA_TABLE);
 
	onCreate(db);
	}
	}
 
 
	public void open() throws SQLException          //ouvre l'acces à la base de donnée
	{
	mDbHelper = new DatabaseHelper(mCtx);
	mDb = mDbHelper.getWritableDatabase();
 
 
	}
 
	public void close()                            //ferme l'accès à la base de donnée
	{
	mDbHelper.close();
	}
 
	public long insertchicha(String sNomChicha, String sNumeroChicha, String sCodePostalChicha, String sVilleChicha, String sAdresseChicha, String sPrixChicha, String sDescriptionChicha )        //insere un nouveau contenu
	{
	ContentValues initialValues = new ContentValues();
	initialValues.put("nom_chicha", sNomChicha);
	initialValues.put("numero_chicha", sNumeroChicha);
	initialValues.put("codepostal_chicha", sCodePostalChicha);
	initialValues.put("ville_chicha", sVilleChicha );
	initialValues.put("adresse_chicha", sAdresseChicha );
	initialValues.put("prix_chicha", sPrixChicha );
	initialValues.put("description_chicha", sDescriptionChicha );
 
	return mDb.insert(CHICHA_TABLE, null, initialValues);
	}
 
 
 
 
 
}
--------------------------------------------------------------------------

ma classe principale :


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
   public boolean onOptionsItemSelected(MenuItem item) {
    	switch (item.getItemId()) {
    	case R.id.item01:
    	//int i = 1;
    	this.setContentView(R.layout.consultationbase);
    	return true;
 
    	case R.id.item02:
        	//int j = 1;
        	this.setContentView(R.layout.enregistrementbase);
 
        	    Button buttonenvoyertable = (Button) findViewById(R.id.button_envoyertable);
 
 
        		final TextView nomchicha = (TextView) findViewById(R.id.edit_nom);
        		final TextView numerochicha = (TextView) findViewById(R.id.edit_numero);
        		final TextView codepostalchicha = (TextView) findViewById(R.id.edit_codepostal);
        		final TextView villechicha = (TextView) findViewById(R.id.edit_ville);
        		final TextView adressechicha = (TextView) findViewById(R.id.edit_adresse);
        		final TextView prixchicha = (TextView) findViewById(R.id.edit_prix);
        		final TextView descriptionchicha = (TextView) findViewById(R.id.edit_description);
 
 
        		buttonenvoyertable.setOnClickListener(new Button.OnClickListener() {
 
        			public void onClick(View v) {
        			objBd.open();//connexion à  ma base de donnée
        			String sNomChicha = nomchicha.getText().toString();//récupération du nom 
        			String sNumeroChicha = numerochicha.getText().toString();
        			String sCodePostalChicha = codepostalchicha.getText().toString();
        		    String sVilleChicha = villechicha.getText().toString();
        		    String sAdresseChicha = adressechicha.getText().toString();
        		    String sPrixChicha = prixchicha.getText().toString();
        		    String sDescriptionChicha = descriptionchicha.getText().toString();
 
 
 
        			long bresult = objBd.insertchicha(sNomChicha, sNumeroChicha,sCodePostalChicha, sVilleChicha, sAdresseChicha, sPrixChicha, sDescriptionChicha);//enregistrement dans ma base de données
        			String resultsring = new Long(bresult).toString() ;//conversion du résultat en Type String pour pouvoir l'affiché
        			nomchicha.setText(resultsring);//affichage du résultat de notre requete dans le champ contenu de la recette
        			numerochicha.setText(resultsring);
        			codepostalchicha.setText(resultsring);
        			villechicha.setText(resultsring);
        			adressechicha.setText(resultsring);
        			prixchicha.setText(resultsring);
        			descriptionchicha.setText(resultsring);
 
        			objBd.close();//fermeture de ma base de données
 
        			;}
 
        		});
 
        		return true;
 
    	case R.id.item03:
        	//int i = 1;
        	this.setContentView(R.layout.jeux);
        	return true;
    	}
         return false;
}
 
 
}
--------------------------------------------------------------------------

ps : les edit_xxxx sont les edittext de mon xml




merci d'avance de votre aide
cordialement