Bonjour, j'ai un bug qui fait fermer mon application à intervalle irrégulier,

ça arrive souvent quand je suis dans un formulaire interagissant avec une base de données.

Voici le fichier de log:

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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
 
 
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c911010, pid=1460, tid=1652
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0_03-b05 mixed mode)
# Problematic frame:
# C  [ntdll.dll+0x1010]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
 
---------------  T H R E A D  ---------------
 
Current thread (0x0b20a000):  JavaThread "AWT-EventQueue-0" [_thread_in_native, id=1652]
 
siginfo: ExceptionCode=0xc0000005, reading address 0x00000018
 
Registers:
EAX=0x00000004, EBX=0x0b5ff160, ECX=0x7ffab000, EDX=0x00000004
ESP=0x0b5ff0fc, EBP=0x0b5ff114, ESI=0x00000000, EDI=0x0b612a18
EIP=0x7c911010, EFLAGS=0x00010297
 
Top of Stack: (sp=0x0b5ff0fc)
0x0b5ff0fc:   74765a16 00000004 0b612a3c 7473139f
0x0b5ff10c:   0b612a3c 00000000 0b5ff12c 7473a244
0x0b5ff11c:   0b612a3c 74760000 0b20a0ec 0b5ffd64
0x0b5ff12c:   0b5ff140 7473a653 0aeb9ff8 0b20a0ec
0x0b5ff13c:   06fbf4a0 0b5ff158 6d3f11cb 0b612a18
0x0b5ff14c:   0b5ff160 0b20a000 06fbf4a0 0b5ff198
0x0b5ff15c:   008ea440 00000000 0b5ff1b4 0b612a18
0x0b5ff16c:   00000000 0b5ff1a8 000000bc 0b5ff178 
 
Instructions: (pc=0x7c911010)
0x7c911000:   90 90 90 90 90 64 8b 0d 18 00 00 00 8b 54 24 04
0x7c911010:   83 7a 14 00 75 4f f0 ff 42 04 75 19 8b 41 24 89 
 
 
Stack: [0x0b5b0000,0x0b600000),  sp=0x0b5ff0fc,  free space=316k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [ntdll.dll+0x1010]
C  [ODBC32.dll+0xa244]
C  [ODBC32.dll+0xa653]
C  [JdbcOdbc.dll+0x11cb]
j  sun.jdbc.odbc.JdbcOdbc.allocConnect(J[B)J+0
j  sun.jdbc.odbc.JdbcOdbc.SQLAllocConnect(J)J+30
j  sun.jdbc.odbc.JdbcOdbcDriver.allocConnection(J)J+6
j  sun.jdbc.odbc.JdbcOdbcConnection.initialize(Ljava/lang/String;Ljava/util/Properties;I)V+37
j  sun.jdbc.odbc.JdbcOdbcDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+129
j  java.sql.DriverManager.getConnection(Ljava/lang/String;Ljava/util/Properties;Ljava/lang/ClassLoader;)Ljava/sql/Connection;+210
j  java.sql.DriverManager.getConnection(Ljava/lang/String;)Ljava/sql/Connection;+15
j  connexionBD.Connexion.ouvrirConnexion()V+28
j  connexionBD.Connexion.<init>()V+10
j  controlleurBDFormulaire.BDContacts.getValeursChamp(Ljava/lang/String;)Ljava/util/ArrayList;+4
J  formulaire.ControleurFormulaire.updateFormulaire(Ljava/lang/String;)Ljavax/swing/JPanel;
j  contacts.GestionContacts$1.actionPerformed(Ljava/awt/event/ActionEvent;)V+161
j  javax.swing.JComboBox.fireActionEvent()V+127
J  javax.swing.JComboBox.setSelectedItem(Ljava/lang/Object;)V
j  javax.swing.JComboBox.setSelectedIndex(I)V+76
j  contacts.GestionContacts$7.actionPerformed(Ljava/awt/event/ActionEvent;)V+46
j  javax.swing.AbstractButton.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+84
j  javax.swing.AbstractButton$Handler.actionPerformed(Ljava/awt/event/ActionEvent;)V+5
j  javax.swing.DefaultButtonModel.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+35
j  javax.swing.DefaultButtonModel.setPressed(Z)V+117
j  javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Ljava/awt/event/MouseEvent;)V+35
j  java.awt.Component.processMouseEvent(Ljava/awt/event/MouseEvent;)V+64
j  javax.swing.JComponent.processMouseEvent(Ljava/awt/event/MouseEvent;)V+23
J  java.awt.Component.processEvent(Ljava/awt/AWTEvent;)V
J  java.awt.Container.processEvent(Ljava/awt/AWTEvent;)V
J  java.awt.Component.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.LightweightDispatcher.retargetMouseEvent(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
J  java.awt.LightweightDispatcher.processMouseEvent(Ljava/awt/event/MouseEvent;)Z
J  java.awt.LightweightDispatcher.dispatchEvent(Ljava/awt/AWTEvent;)Z
J  java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.Window.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V
J  java.awt.EventDispatchThread.pumpOneEventForFilters(I)Z
J  java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V
j  java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11
j  java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
j  java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
j  java.awt.EventDispatchThread.run()V+9
v  ~StubRoutines::call_stub
 
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  sun.jdbc.odbc.JdbcOdbc.allocConnect(J[B)J+0
j  sun.jdbc.odbc.JdbcOdbc.SQLAllocConnect(J)J+30
j  sun.jdbc.odbc.JdbcOdbcDriver.allocConnection(J)J+6
j  sun.jdbc.odbc.JdbcOdbcConnection.initialize(Ljava/lang/String;Ljava/util/Properties;I)V+37
j  sun.jdbc.odbc.JdbcOdbcDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+129
j  java.sql.DriverManager.getConnection(Ljava/lang/String;Ljava/util/Properties;Ljava/lang/ClassLoader;)Ljava/sql/Connection;+210
j  java.sql.DriverManager.getConnection(Ljava/lang/String;)Ljava/sql/Connection;+15
j  connexionBD.Connexion.ouvrirConnexion()V+28
j  connexionBD.Connexion.<init>()V+10
j  controlleurBDFormulaire.BDContacts.getValeursChamp(Ljava/lang/String;)Ljava/util/ArrayList;+4
J  formulaire.ControleurFormulaire.updateFormulaire(Ljava/lang/String;)Ljavax/swing/JPanel;
j  contacts.GestionContacts$1.actionPerformed(Ljava/awt/event/ActionEvent;)V+161
j  javax.swing.JComboBox.fireActionEvent()V+127
J  javax.swing.JComboBox.setSelectedItem(Ljava/lang/Object;)V
j  javax.swing.JComboBox.setSelectedIndex(I)V+76
j  contacts.GestionContacts$7.actionPerformed(Ljava/awt/event/ActionEvent;)V+46
j  javax.swing.AbstractButton.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+84
j  javax.swing.AbstractButton$Handler.actionPerformed(Ljava/awt/event/ActionEvent;)V+5
j  javax.swing.DefaultButtonModel.fireActionPerformed(Ljava/awt/event/ActionEvent;)V+35
j  javax.swing.DefaultButtonModel.setPressed(Z)V+117
j  javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Ljava/awt/event/MouseEvent;)V+35
j  java.awt.Component.processMouseEvent(Ljava/awt/event/MouseEvent;)V+64
j  javax.swing.JComponent.processMouseEvent(Ljava/awt/event/MouseEvent;)V+23
J  java.awt.Component.processEvent(Ljava/awt/AWTEvent;)V
J  java.awt.Container.processEvent(Ljava/awt/AWTEvent;)V
J  java.awt.Component.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.LightweightDispatcher.retargetMouseEvent(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
J  java.awt.LightweightDispatcher.processMouseEvent(Ljava/awt/event/MouseEvent;)Z
J  java.awt.LightweightDispatcher.dispatchEvent(Ljava/awt/AWTEvent;)Z
J  java.awt.Container.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.Window.dispatchEventImpl(Ljava/awt/AWTEvent;)V
J  java.awt.EventQueue.dispatchEvent(Ljava/awt/AWTEvent;)V
J  java.awt.EventDispatchThread.pumpOneEventForFilters(I)Z
J  java.awt.EventDispatchThread.pumpEventsForFilter(ILjava/awt/Conditional;Ljava/awt/EventFilter;)V
j  java.awt.EventDispatchThread.pumpEventsForHierarchy(ILjava/awt/Conditional;Ljava/awt/Component;)V+11
j  java.awt.EventDispatchThread.pumpEvents(ILjava/awt/Conditional;)V+4
j  java.awt.EventDispatchThread.pumpEvents(Ljava/awt/Conditional;)V+3
j  java.awt.EventDispatchThread.run()V+9
v  ~StubRoutines::call_stub
 
---------------  P R O C E S S  ---------------
 
Java Threads: ( => current thread )
  0x0ae54400 JavaThread "Thread-3" [_thread_blocked, id=1508]
  0x0af36000 JavaThread "Thread-2" [_thread_blocked, id=896]
  0x0ae24400 JavaThread "TimerQueue" daemon [_thread_blocked, id=2520]
  0x00386000 JavaThread "DestroyJavaVM" [_thread_blocked, id=796]
=>0x0b20a000 JavaThread "AWT-EventQueue-0" [_thread_in_native, id=1652]
  0x0adbf400 JavaThread "AWT-Windows" daemon [_thread_in_native, id=3676]
  0x0adbe400 JavaThread "AWT-Shutdown" [_thread_blocked, id=3968]
  0x0adbd400 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=2432]
  0x0aa8b400 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3560]
  0x0aa89c00 JavaThread "CompilerThread0" daemon [_thread_blocked, id=1776]
  0x0aa85400 JavaThread "Attach Listener" daemon [_thread_blocked, id=3220]
  0x0aa84800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3436]
  0x0aa73400 JavaThread "Finalizer" daemon [_thread_blocked, id=3340]
  0x0aa72400 JavaThread "Reference Handler" daemon [_thread_blocked, id=3544]
 
Other Threads:
  0x0aa6dc00 VMThread [id=2956]
  0x0aa8cc00 WatcherThread [id=1956]
 
VM state:not at safepoint (normal execution)
 
VM Mutex/Monitor currently owned by a thread: None
 
Heap
 def new generation   total 960K, used 433K [0x02960000, 0x02a60000, 0x02e40000)
  eden space 896K,  45% used [0x02960000, 0x029c6ce8, 0x02a40000)
  from space 64K,  34% used [0x02a40000, 0x02a45760, 0x02a50000)
  to   space 64K,   0% used [0x02a50000, 0x02a50000, 0x02a60000)
 tenured generation   total 11436K, used 7485K [0x02e40000, 0x0396b000, 0x06960000)
   the space 11436K,  65% used [0x02e40000, 0x0358f470, 0x0358f600, 0x0396b000)
 compacting perm gen  total 12288K, used 10487K [0x06960000, 0x07560000, 0x0a960000)
   the space 12288K,  85% used [0x06960000, 0x0739de80, 0x0739e000, 0x07560000)
No shared spaces configured.
 
Dynamic libraries:
0x00400000 - 0x00423000 	C:\Program Files\Java\jre1.6.0_03\bin\javaw.exe
0x7c910000 - 0x7c9c7000 	C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c905000 	C:\WINDOWS\system32\kernel32.dll
0x77da0000 - 0x77e4c000 	C:\WINDOWS\system32\ADVAPI32.dll
0x77e50000 - 0x77ee1000 	C:\WINDOWS\system32\RPCRT4.dll
0x7e390000 - 0x7e420000 	C:\WINDOWS\system32\USER32.dll
0x77ef0000 - 0x77f37000 	C:\WINDOWS\system32\GDI32.dll
0x76320000 - 0x7633d000 	C:\WINDOWS\system32\IMM32.DLL
0x7c340000 - 0x7c396000 	C:\Program Files\Java\jre1.6.0_03\bin\msvcr71.dll
0x6d7c0000 - 0x6da0a000 	C:\Program Files\Java\jre1.6.0_03\bin\client\jvm.dll
0x76ae0000 - 0x76b0f000 	C:\WINDOWS\system32\WINMM.dll
0x6d310000 - 0x6d318000 	C:\Program Files\Java\jre1.6.0_03\bin\hpi.dll
0x76ba0000 - 0x76bab000 	C:\WINDOWS\system32\PSAPI.DLL
0x6d770000 - 0x6d77c000 	C:\Program Files\Java\jre1.6.0_03\bin\verify.dll
0x6d3b0000 - 0x6d3cf000 	C:\Program Files\Java\jre1.6.0_03\bin\java.dll
0x6d7b0000 - 0x6d7bf000 	C:\Program Files\Java\jre1.6.0_03\bin\zip.dll
0x6d000000 - 0x6d1c3000 	C:\Program Files\Java\jre1.6.0_03\bin\awt.dll
0x72f50000 - 0x72f76000 	C:\WINDOWS\system32\WINSPOOL.DRV
0x77be0000 - 0x77c38000 	C:\WINDOWS\system32\msvcrt.dll
0x774a0000 - 0x775dd000 	C:\WINDOWS\system32\ole32.dll
0x736b0000 - 0x736f9000 	C:\WINDOWS\system32\ddraw.dll
0x73b10000 - 0x73b16000 	C:\WINDOWS\system32\DCIMAN32.dll
0x74690000 - 0x746db000 	C:\WINDOWS\system32\MSCTF.dll
0x75140000 - 0x7516e000 	C:\WINDOWS\system32\msctfime.ime
0x7c9d0000 - 0x7d1f5000 	C:\WINDOWS\system32\shell32.dll
0x77f40000 - 0x77fb6000 	C:\WINDOWS\system32\SHLWAPI.dll
0x77390000 - 0x77493000 	C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2982_x-ww_ac3f9c03\comctl32.dll
0x58b50000 - 0x58bea000 	C:\WINDOWS\system32\comctl32.dll
0x6d2b0000 - 0x6d303000 	C:\Program Files\Java\jre1.6.0_03\bin\fontmanager.dll
0x6d3f0000 - 0x6d3fd000 	C:\Program Files\Java\jre1.6.0_03\bin\JdbcOdbc.dll
0x74730000 - 0x7476d000 	C:\WINDOWS\system32\ODBC32.dll
0x76340000 - 0x7638a000 	C:\WINDOWS\system32\comdlg32.dll
0x20000000 - 0x20018000 	C:\WINDOWS\system32\odbcint.dll
0x770e0000 - 0x7716b000 	C:\WINDOWS\system32\OLEAUT32.dll
0x77fc0000 - 0x77fd1000 	C:\WINDOWS\system32\Secur32.dll
0x76f80000 - 0x76fff000 	C:\WINDOWS\system32\CLBCATQ.DLL
0x77000000 - 0x770d4000 	C:\WINDOWS\system32\COMRes.dll
0x77bd0000 - 0x77bd8000 	C:\WINDOWS\system32\VERSION.dll
0x1b810000 - 0x1b84a000 	C:\WINDOWS\system32\msjtes40.dll
0x0b8f0000 - 0x0b8fb000 	C:\WINDOWS\system32\VBAJET32.DLL
0x10e10000 - 0x10e72000 	C:\WINDOWS\system32\expsrv.dll
0x6d450000 - 0x6d474000 	C:\Program Files\Java\jre1.6.0_03\bin\jpeg.dll
0x11810000 - 0x11aea000 	C:\WINDOWS\system32\xpsp2res.dll
0x6d570000 - 0x6d583000 	C:\Program Files\Java\jre1.6.0_03\bin\net.dll
0x719f0000 - 0x71a07000 	C:\WINDOWS\system32\WS2_32.dll
0x719e0000 - 0x719e8000 	C:\WINDOWS\system32\WS2HELP.dll
0x6d590000 - 0x6d599000 	C:\Program Files\Java\jre1.6.0_03\bin\nio.dll
0x6d220000 - 0x6d243000 	C:\Program Files\Java\jre1.6.0_03\bin\dcpr.dll
0x71990000 - 0x719d0000 	C:\WINDOWS\System32\mswsock.dll
0x76ed0000 - 0x76ef7000 	C:\WINDOWS\system32\DNSAPI.dll
0x76f60000 - 0x76f68000 	C:\WINDOWS\System32\winrnr.dll
0x76f10000 - 0x76f3d000 	C:\WINDOWS\system32\WLDAP32.dll
0x76f70000 - 0x76f76000 	C:\WINDOWS\system32\rasadhlp.dll
 
VM Arguments:
java_command: demarrage.Demarrer
Launcher Type: SUN_STANDARD
 
Environment Variables:
PATH=C:\Program Files\Java\jre1.6.0_03\bin\client;C:\Program Files\Java\jre1.6.0_03\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Fichiers communs\GTK\2.0\bin
USERNAME=recep2
OS=Windows_NT
PROCESSOR_IDENTIFIER=x86 Family 6 Model 14 Stepping 8, GenuineIntel
 
 
 
---------------  S Y S T E M  ---------------
 
OS: Windows XP Build 2600 Service Pack 2
 
CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 14 stepping 8, cmov, cx8, fxsr, mmx, sse, sse2, sse3
 
Memory: 4k page, physical 515244k(94228k free), swap 1259000k(715344k free)
 
vm_info: Java HotSpot(TM) Client VM (1.6.0_03-b05) for windows-x86, built on Sep 24 2007 22:24:33 by "java_re" with unknown MS VC++:1310
Puis voici la classe, qui je crois, génère l'erreur (en java):

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
package connexionBD;
 
import java.sql.*;
 
 
 
//Cette classe sert à faire la connexion à la base de données Microsoft Access
public class Connexion{
 
	private Statement s;
	private Connection con;
	private boolean erreur = false;
 
	/*
	 * Quand on instancie cette classe, on ouvre une connexion automatiquement.
	 */
	public Connexion()
	{
 
		ouvrirConnexion();
 
	}	
 
	/*
	 * Cette méthode sert à ouvrir une connexion sur la base de données.
	 */
 
	public void ouvrirConnexion(){
 
		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
 
			String dataSourceName = "bd";
			String dbURL = "jdbc:odbc:" + dataSourceName;
 
			con = DriverManager.getConnection(dbURL); 
 
			s = con.createStatement();
 
		}
		catch (Exception err) {
			System.out.println("ERROR: " + err);
			erreur=true;
		}
 
	}
 
	/*
	 * Cette méthode retourne le résultat d'une requête à la base de données.
	 */
	public ResultSet execute(String sql){
 
		ResultSet rs = null;
 
		try{
			rs = s.executeQuery(sql);
		}catch(Exception e){
			System.out.println(e.getMessage());
			System.out.println("***************************************************");
			System.out.println("Exécution échouée / The execution failed.");
			System.out.println(sql);
			System.out.println("***************************************************");
			erreur=true;
		}
 
		return rs;
 
	}
 
	//Méthode servant à faire une modification à la base de données (UPDATE,DELETE,INSERT)
	public void executeUpdate(String sql){
 
		try{
			try {
 
				s.executeUpdate(sql);
 
			} catch (SQLException e) {
				System.out.println("Exécution échouée / The execution failed.");
				System.out.println(sql);
				System.out.println(e.getMessage());
				e.printStackTrace();
				erreur = true;
			}
		}catch(Exception e){
			System.out.println("Erreur");
		}
 
	}
 
	/*
	 * Ferme la connexion à la base de données.
	 */
	public void fermerConnexion(){
		try{
 
			con.close();
			s.close();
 
		}catch(Exception e){
			System.out.println(e.getMessage());
			erreur = true;
		}
	}
 
	public boolean aDesErreurs(){
 
		return erreur;
 
	}
 
 
}



Merci de votre aide !