Erreur de casting

Fermé
Shielded - Modifié le 15 avril 2021 à 15:28
 Shielded - 15 avril 2021 à 18:09
Bonjour,

Je code sous netbeans. J'ai 4 textfields nommés tf1, etc. et un tableau d.

Je veux après avoir cliqué sur le bouton ajouter, que ce qui est saisi dans les textfield passe dans le tableau. Pour cela j'ai fait le code suivant:

private void ajouterActionPerformed(java.awt.event.ActionEvent evt) {                                        
        
        String codeproduit, quantite, poids, prix;
               codeproduit= tf1.getText();
               quantite = tf2.getText();
               poids = tf3.getText();
               prix = tf4.getText();
            String []ligne = new String[]{codeproduit, quantite, poids, prix};
            d.addRow(ligne);
        
    }


Mais j'ai l'erreur suivante : Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: Cannot cast javax.swing.JButton to java.lang.Boolean

Merci d'avance à ceux qui pourraient m'aider.

3 réponses

KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 3 005
15 avril 2021 à 15:31
Bonjour,

"Cannot cast javax.swing.JButton to java.lang.Boolean"
Dans ton code je ne vois ni JButton, ni Boolean, ni cast...

Regarde le message d'erreur complet, il t'indiquera sur quelle ligne de code est le problème.
0
i-dessous le code d'erreur entier :
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: Cannot cast javax.swing.JButton to java.lang.Boolean
 at java.lang.Class.cast(Class.java:3369)
 at org.jdesktop.beansbinding.Binding.convertForward(Binding.java:1312)
 at org.jdesktop.beansbinding.Binding.getSourceValueForTarget(Binding.java:844)
 at org.jdesktop.beansbinding.Binding.refreshUnmanaged(Binding.java:1222)
 at org.jdesktop.beansbinding.Binding.refresh(Binding.java:1207)
 at org.jdesktop.beansbinding.AutoBinding.tryRefreshThenSave(AutoBinding.java:162)
 at org.jdesktop.beansbinding.AutoBinding.bindImpl(AutoBinding.java:199)
 at org.jdesktop.beansbinding.Binding.bindUnmanaged(Binding.java:959)
 at org.jdesktop.beansbinding.Binding.bind(Binding.java:944)
 at org.jdesktop.beansbinding.BindingGroup.bind(BindingGroup.java:143)
 at memo2.Crud_Vente.initComponents(Crud_Vente.java:497)
 at memo2.Crud_Vente.<init>(Crud_Vente.java:27)
 at memo2.Crud_Vente.lambda$main$0(Crud_Vente.java:558)
 at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
 at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
 at java.awt.EventQueue.access$500(EventQueue.java:97)
 at java.awt.EventQueue$3.run(EventQueue.java:709)
 at java.awt.EventQueue$3.run(EventQueue.java:703)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
 at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
 at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
 at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
 at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

la ligne 497 montre ceci : bindingGroup.bind();
0
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 3 005
15 avril 2021 à 16:34
bindingGroup.bind() plante à cause du code qu'il y a avant, j'imagine que c'est là que tu as des JButton et/ou des Boolean que tu ajoutes à ton bindingGroup ou à ce qu'il contient.
0
je n'ai aucun bouton. En fait cette ligne s'est ajoutée à mon insu; je crois quand j'ai voulu fermer le programme la nuit.

Pour faire mes interfaces je ne code pas mais utilise les objets preconçu de netbeans
0