Exception in thread "main" java.lang.NullPointerException
Résolu
guns65
Messages postés
38
Statut
Membre
-
guns65 Messages postés 38 Statut Membre -
guns65 Messages postés 38 Statut Membre -
salut tou le monde !! mon probleme c'est loreque j'execute mon programme j'ai ca
Exception in thread "main" java.lang.NullPointerException
at Application.fermeture(Application.java:436)
at Application.main(Application.java:448)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Fournisseur.actionPerformed(Application.java:114)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Process completed.
voici mon code !!
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
/////////////////////////////////////////onglet fournisseur//////////////////////////////////////////////////////////////
class Fournisseur extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
JLabel l1 = new JLabel(" Id-F");
JLabel l2 = new JLabel(" Nom-F");
JLabel l3 = new JLabel(" Prenom-F");
JLabel l4 = new JLabel(" Adresse");
JLabel l5 = new JLabel(" N° Telephone");
JLabel l6 = new JLabel("");
JLabel l7 = new JLabel("");
JLabel l8 = new JLabel("");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JTextField t4 = new JTextField();
JTextField t5 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p1 = new JPanel();
public Fournisseur() {
p1.setLayout(new GridLayout(5, 3, 3,3));
p1.add(l1);
p1.add(t1);
p1.add(bt1);
p1.add(l2);
p1.add(t2);
p1.add(bt2);
p1.add(l3);
p1.add(t3);
p1.add(l6);
p1.add(l4);
p1.add(t4);
p1.add(l7);
p1.add(l5);
p1.add(t5);
p1.add(l8);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p1);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public String gett4() {
return t4.getText();
}
//////
public String gett5() {
return t5.getText();
}
//////////////////////////////executer le requete lors de lappuis du bouton //////////////////////////////////////////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"','"+gett4()+"','"+gett5()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Fournisseur WHERE nom =('"+gett2()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
//////////////////////////////////////////////////////onglet Client//////////////////////////////////////////////////
class Client extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
JLabel l1 = new JLabel(" Id-C");
JLabel l2 = new JLabel(" Nom-C");
JLabel l3 = new JLabel(" Prenom-C");
JLabel l4 = new JLabel(" Adresse");
JLabel l5 = new JLabel(" N° Telephone");
JLabel l6 = new JLabel("");
JLabel l7 = new JLabel("");
JLabel l8 = new JLabel("");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JTextField t4 = new JTextField();
JTextField t5 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p2 = new JPanel();
public Client() {
p2.setLayout(new GridLayout(5, 3, 3,3));
p2.add(l1);
p2.add(t1);
p2.add(bt1);
p2.add(l2);
p2.add(t2);
p2.add(bt2);
p2.add(l3);
p2.add(t3);
p2.add(l6);
p2.add(l4);
p2.add(t4);
p2.add(l7);
p2.add(l5);
p2.add(t5);
p2.add(l8);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p2);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public String gett4() {
return t4.getText();
}
//////
public String gett5() {
return t5.getText();
}
//////////////////////////////executer le requete lors de lappuis du bouton //////////////////////////////////////////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"','"+gett4()+"','"+gett5()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Table1 WHERE nom =('"+gett2()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
////////////////////////////////////// onglet Produit ///////////////////////////////////////////////////////////////////////////
class Produit extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
//////////////////////////////////////////////////////////
JLabel l1 = new JLabel(" Nom-P");
JLabel l2 = new JLabel(" N° Serie");
JLabel l3 = new JLabel(" Prix");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p3 = new JPanel();
public Produit() {
p3.setLayout(new GridLayout(3, 3, 3,3));
p3.add(l1);
p3.add(t1);
p3.add(bt1);
p3.add(l2);
p3.add(t2);
p3.add(bt2);
p3.add(l3);
p3.add(t3);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p3);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Table1 WHERE Nom-P =('"+gett1()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
//////////////////////////////////////////Application principale ///////////////////////////////////////////////////////////////////
public class Application extends JFrame implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
public JMenuBar menu= new JMenuBar();
JTabbedPane onglet = new JTabbedPane();
public Application(){
super("gestion de stock");
setSize(400,400);
setVisible(true);
setDefaultCloseOperation(this.EXIT_ON_CLOSE);
Container content = this.getContentPane();
onglet.addTab("Fournisseur",new Fournisseur());
onglet.addTab("Client",new Client());
onglet.addTab("Produit",new Produit());
content.add(BorderLayout.CENTER ,onglet);
addmenu();
this.setJMenuBar(menu);
this.show();
}
/////////////////////////////////////////////// menu ////////////////////////////////////////////////////////////////////////////
public void addmenu() {
JMenu Fichier = new JMenu("Fichier");
JMenu Help = new JMenu("Help");
JMenu Basculer = new JMenu("Basculer");
JMenuItem Quitter = new JMenuItem("Quiter");
JMenuItem Fournisseur = new JMenuItem("Fournisseur");
JMenuItem Client = new JMenuItem("Client");
JMenuItem Produit = new JMenuItem("Produit");
menu.add(Fichier);
menu.add(Help);
Fichier.add(Quitter);
Fichier.add(Basculer);
Basculer.add(Fournisseur);
Basculer.add(Client);
Basculer.add(Produit);
Quitter.addActionListener(this);
Fournisseur.addActionListener(this);
Client.addActionListener(this);
Produit.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();
if(cmd.equals("Fournisseur"))
onglet.setSelectedIndex(0);
if(cmd.equals("Client"))
onglet.setSelectedIndex(1);
if(cmd.equals("Produit"))
onglet.setSelectedIndex(2);
if(cmd.equals("Quitter"))
{//JOptionPane.showMessageDialog("ffffffffffffff");
//int a= Integer.parseInt(JOptionPane.showInputDialog("ok"));
System.exit(0);
//this.dispose();
}
}
////////////////////////////////////se connecter a la base //////////////////////////////////////////////////////////////////
public void connection(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e5){
System.out.println("impossible de chargern les drivers");
}
try{
String url="jdbc:odbc:test";
con=DriverManager.getConnection(url, "","");
}
catch(SQLException e5)
{
System.out.println("impossible de créer une connexion");
}
}
public void fermeture(){
try {
//rs.close();
st.close();
con.close();
}
catch(SQLException e){}
}
public static void main(String[] args) {
Application interface1 = new Application();
interface1.connection();
interface1.fermeture();
interface1.pack();
interface1.show();
}
}
merci pour votre aide :)
Exception in thread "main" java.lang.NullPointerException
at Application.fermeture(Application.java:436)
at Application.main(Application.java:448)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Fournisseur.actionPerformed(Application.java:114)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Process completed.
voici mon code !!
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
/////////////////////////////////////////onglet fournisseur//////////////////////////////////////////////////////////////
class Fournisseur extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
JLabel l1 = new JLabel(" Id-F");
JLabel l2 = new JLabel(" Nom-F");
JLabel l3 = new JLabel(" Prenom-F");
JLabel l4 = new JLabel(" Adresse");
JLabel l5 = new JLabel(" N° Telephone");
JLabel l6 = new JLabel("");
JLabel l7 = new JLabel("");
JLabel l8 = new JLabel("");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JTextField t4 = new JTextField();
JTextField t5 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p1 = new JPanel();
public Fournisseur() {
p1.setLayout(new GridLayout(5, 3, 3,3));
p1.add(l1);
p1.add(t1);
p1.add(bt1);
p1.add(l2);
p1.add(t2);
p1.add(bt2);
p1.add(l3);
p1.add(t3);
p1.add(l6);
p1.add(l4);
p1.add(t4);
p1.add(l7);
p1.add(l5);
p1.add(t5);
p1.add(l8);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p1);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public String gett4() {
return t4.getText();
}
//////
public String gett5() {
return t5.getText();
}
//////////////////////////////executer le requete lors de lappuis du bouton //////////////////////////////////////////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"','"+gett4()+"','"+gett5()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Fournisseur WHERE nom =('"+gett2()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
//////////////////////////////////////////////////////onglet Client//////////////////////////////////////////////////
class Client extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
JLabel l1 = new JLabel(" Id-C");
JLabel l2 = new JLabel(" Nom-C");
JLabel l3 = new JLabel(" Prenom-C");
JLabel l4 = new JLabel(" Adresse");
JLabel l5 = new JLabel(" N° Telephone");
JLabel l6 = new JLabel("");
JLabel l7 = new JLabel("");
JLabel l8 = new JLabel("");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JTextField t4 = new JTextField();
JTextField t5 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p2 = new JPanel();
public Client() {
p2.setLayout(new GridLayout(5, 3, 3,3));
p2.add(l1);
p2.add(t1);
p2.add(bt1);
p2.add(l2);
p2.add(t2);
p2.add(bt2);
p2.add(l3);
p2.add(t3);
p2.add(l6);
p2.add(l4);
p2.add(t4);
p2.add(l7);
p2.add(l5);
p2.add(t5);
p2.add(l8);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p2);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public String gett4() {
return t4.getText();
}
//////
public String gett5() {
return t5.getText();
}
//////////////////////////////executer le requete lors de lappuis du bouton //////////////////////////////////////////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"','"+gett4()+"','"+gett5()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Table1 WHERE nom =('"+gett2()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
////////////////////////////////////// onglet Produit ///////////////////////////////////////////////////////////////////////////
class Produit extends JPanel implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
//////////////////////////////////////////////////////////
JLabel l1 = new JLabel(" Nom-P");
JLabel l2 = new JLabel(" N° Serie");
JLabel l3 = new JLabel(" Prix");
JTextField t1 = new JTextField();
JTextField t2 = new JTextField();
JTextField t3 = new JTextField();
JButton bt1 = new JButton("Ajouter");
JButton bt2 = new JButton("Supprimer");
public JPanel p3 = new JPanel();
public Produit() {
p3.setLayout(new GridLayout(3, 3, 3,3));
p3.add(l1);
p3.add(t1);
p3.add(bt1);
p3.add(l2);
p3.add(t2);
p3.add(bt2);
p3.add(l3);
p3.add(t3);
bt1.addActionListener(this);
bt2.addActionListener(this);
this.add(p3);
this.setSize(400,400);
}
/////////////// recuperer le text dans le textfield ///////////////////////////////////////////////////////////////////
public String gett1() {
return t1.getText();
}
//////
public String gett2() {
return t2.getText();
}
//////
public String gett3() {
return t3.getText();
}
//////
public void actionPerformed(ActionEvent e){
Object src=e.getSource();
if(src instanceof JButton){
JButton var=(JButton) src;
///////////////////////ajouter//////////////////////
if (var==bt1) {
try
{
st=con.createStatement();
String req ="INSERT INTO Fournisseur VALUES('"+gett1()+"','"+gett2()+"','"+gett3()+"')";
int c =st.executeUpdate(req);
}
catch(SQLException e1){e1.printStackTrace(); }
}
////////////////////supprimer//////////////
else if (var==bt2){
try
{
st=con.createStatement();
String req2="DELETE * FROM Table1 WHERE Nom-P =('"+gett1()+"') ";
int b =st.executeUpdate(req2);
}
catch(SQLException e2){e2.printStackTrace(); }
}
}}
}
//////////////////////////////////////////Application principale ///////////////////////////////////////////////////////////////////
public class Application extends JFrame implements ActionListener {
public Connection con = null;
public Statement st= null;
public ResultSet rs= null;
public JMenuBar menu= new JMenuBar();
JTabbedPane onglet = new JTabbedPane();
public Application(){
super("gestion de stock");
setSize(400,400);
setVisible(true);
setDefaultCloseOperation(this.EXIT_ON_CLOSE);
Container content = this.getContentPane();
onglet.addTab("Fournisseur",new Fournisseur());
onglet.addTab("Client",new Client());
onglet.addTab("Produit",new Produit());
content.add(BorderLayout.CENTER ,onglet);
addmenu();
this.setJMenuBar(menu);
this.show();
}
/////////////////////////////////////////////// menu ////////////////////////////////////////////////////////////////////////////
public void addmenu() {
JMenu Fichier = new JMenu("Fichier");
JMenu Help = new JMenu("Help");
JMenu Basculer = new JMenu("Basculer");
JMenuItem Quitter = new JMenuItem("Quiter");
JMenuItem Fournisseur = new JMenuItem("Fournisseur");
JMenuItem Client = new JMenuItem("Client");
JMenuItem Produit = new JMenuItem("Produit");
menu.add(Fichier);
menu.add(Help);
Fichier.add(Quitter);
Fichier.add(Basculer);
Basculer.add(Fournisseur);
Basculer.add(Client);
Basculer.add(Produit);
Quitter.addActionListener(this);
Fournisseur.addActionListener(this);
Client.addActionListener(this);
Produit.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();
if(cmd.equals("Fournisseur"))
onglet.setSelectedIndex(0);
if(cmd.equals("Client"))
onglet.setSelectedIndex(1);
if(cmd.equals("Produit"))
onglet.setSelectedIndex(2);
if(cmd.equals("Quitter"))
{//JOptionPane.showMessageDialog("ffffffffffffff");
//int a= Integer.parseInt(JOptionPane.showInputDialog("ok"));
System.exit(0);
//this.dispose();
}
}
////////////////////////////////////se connecter a la base //////////////////////////////////////////////////////////////////
public void connection(){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e5){
System.out.println("impossible de chargern les drivers");
}
try{
String url="jdbc:odbc:test";
con=DriverManager.getConnection(url, "","");
}
catch(SQLException e5)
{
System.out.println("impossible de créer une connexion");
}
}
public void fermeture(){
try {
//rs.close();
st.close();
con.close();
}
catch(SQLException e){}
}
public static void main(String[] args) {
Application interface1 = new Application();
interface1.connection();
interface1.fermeture();
interface1.pack();
interface1.show();
}
}
merci pour votre aide :)
A voir également:
- Exception in thread "main" java.lang.NullPointerException
- Deco in paris avis ✓ - Forum Consommation & Internet
- Aux in ✓ - Forum Enceintes / HiFi
- Navigation in private - Guide
- Peut-on brancher un casque sur une prise auxiliaire ? - Forum Casque et écouteurs
- Dc in - Forum Disque dur / SSD
5 réponses
Exception in thread "main" java.lang.NullPointerException at Application.fermeture(Application.java:436)
Le message d'erreur indique une erreur ligne 436 :
st.close();Or "st" n'est affecté qu'une seule fois, ligne 339 :
public Statement st= null;Tu ne peux pas faire null.close(), d'où le NullPointerException...
D'ailleurs quel intérêt de fermer "st" puisqu'il n'existe pas ?
merci kX :) mais qu'est ce que je dois changer car quand j'appuie dur le bouton ajouter ou supprimer les requêtes ne marche plus !!!
Il faudrait en regarder en détails ce que tu fais, mais soit tu te te sers de "st" (ce qui n'est pas le cas pour l'instant) et il faut l'initialiser quelque part, puis l'utiliser avant de le fermer, soit tu ne t'en sers pas et tu peux enlever "st" de ton code, et en particulier dans le "st.close" qui plante...
je l'est enlever mon probleme c'est avec les requete dans el listener des classes fournisseur client et produit qui ne sexecute pas ! quand j'apuie sur le bouton ca donne ca
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Fournisseur.actionPerformed(Application.java:114)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Process completed.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at Fournisseur.actionPerformed(Application.java:114)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:682)
at java.awt.EventQueue$3.run(EventQueue.java:680)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:696)
at java.awt.EventQueue$4.run(EventQueue.java:694)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:693)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
Process completed.
C'est la même erreur, ailleurs dans le code, mais c'est la même erreur...
Ligne 114 :
Il faut initialiser tes objets avant de t'en servir !
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at Fournisseur.actionPerformed(Application.java:114)
Ligne 114 :
con.createStatement();Alors qu'il n'y a aucune initialisation de "con" à part ligne 8 avec ton
public Connection con = null;Du coup ce que tu fais c'est équivalent à
null.createStatement();Et donc ça plante...
Il faut initialiser tes objets avant de t'en servir !
si ca vous derange pas qu'est ce que je dois modifier :) et merci
On n'initialise pas un objet avec la valeur null, donc tu dois remplacer tous tes " = null;" par une valeur appropriée.
Au lieu d'avoir :
Tu devrais avoir quelque chose comme ça (mais dans un constructeur ou une méthode, pas directement en live dans les attributs de classe)
Au lieu d'avoir :
public Connection con = null; public Statement st = null; public ResultSet rs = null;
Tu devrais avoir quelque chose comme ça (mais dans un constructeur ou une méthode, pas directement en live dans les attributs de classe)
con = DriverManager.getConnection(url,user,password); st = con.createStatement(); rs = st.execute(sql);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question