Bonjour, je suis débutante et un peu perdu j'ai besoin de votre aide pour un programme qui permet l'authentification d'un admin qui va gérer un stock, lorsque je lance le programme, j'ai l'erreur suivante:
Exception in thread "main" java.lang.Error: Unresolved compilation problems: Cannot make a static reference to the non-static field Connexion.dbUsername_admin Cannot make a static reference to the non-static field Connexion.dbPassword_admin Cannot make a static reference to the non-static field Connexion.dbUsername_admin Cannot make a static reference to the non-static field Connexion.textField_pseudo Cannot make a static reference to the non-static field Connexion.dbPassword_admin Cannot make a static reference to the non-static field Connexion.textField_mdp Cannot make a static reference to the non-static field Connexion.dbUsername_admin Cannot make a static reference to the non-static field Connexion.textField_pseudo Cannot make a static reference to the non-static field Connexion.dbPassword_admin Cannot make a static reference to the non-static field Connexion.textField_mdp Cannot make a static reference to the non-static field Connexion.erreur_log Cannot make a static reference to the non-static field Connexion.recherche_bdd Cannot make a static reference to the non-static field Connexion.erreur_log Syntax error, insert "Finally" to complete TryStatement
at gestion_stock.FenPrincipal.<init>(FenPrincipal.java:117) at gestion_stock.FenPrincipal.main(FenPrincipal.java:41)
Et voici le code de ma fenPrincipal qui contient le main et qui fait l'authentification de l'admin:
public class FenPrincipal extends JFrame { private static final long serialVersionUID = 1L; public static String titreFenetre = "( o _ o ) --[ Administrateur ]-- [ x _ x ]"; // titre de la fenetre public static Dimension tailleFenetre = new Dimension(400, 280); // taille de la fenetre public JButton btn; public JButton btn1; public Connexion c = new Connexion(); public Connection conn; public PreparedStatement statement = null; public JTextField textField_pseudo, textField_mdp ; public ResultSet resultat=null; public String query_admin; public String login_admin; //variable prenant en compte les donnees de la colonne login_admin dans la BDD public String mdp_admin; //variable prenant en compte les donnees de la colonne mdp_admin dans la BDD public JPanel black;
public static void main(String[] args) { //Création d'une nouvelle fenetre FenPrincipal fen = new FenPrincipal(); fen.setVisible(true); } /**
Constructeur */ public FenPrincipal() { setBackground(Color.DARK_GRAY); setTitle(titreFenetre); setSize(tailleFenetre); setResizable(false); setLocationRelativeTo(null); // la fenetre apparait au milieu de l'ecran setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //Initialisation des JPanel JLabel lbl = new JLabel (); lbl.setText("Authentication de l'administrateur"); JPanel haut = new JPanel(); haut.setBackground(Color.WHITE); haut.add(lbl); getContentPane().add(BorderLayout.NORTH, haut); JPanel centre = new JPanel(); centre.setBackground(Color.PINK); centre.setAlignmentX(Component.RIGHT_ALIGNMENT); centre.setAlignmentY(Component.BOTTOM_ALIGNMENT); centre.setLayout(null); JLabel login = new JLabel(); login.setFont(new Font("Times New Roman", Font.PLAIN, 13)); login.setBounds(10, 39, 100, 19); login.setText("LOGIN :"); centre.add(login); textField_pseudo = new JTextField(); textField_pseudo.setBounds(127, 33, 200, 25); textField_pseudo.setPreferredSize(new Dimension(100, 20)); centre.add(textField_pseudo); JLabel mdp = new JLabel(); mdp.setFont(new Font("Times New Roman", Font.PLAIN, 13)); mdp.setBounds(10, 80, 107, 19); mdp.setText("MOT de PASSE :"); centre.add(mdp); textField_mdp = new JPasswordField(); textField_mdp.setBounds(127, 74, 200, 25); centre.add(textField_mdp); btn1 = new JButton("Quitter"); btn1.setBounds(236, 110, 91, 30); centre.add(btn1); btn1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.exit(0); } }); getContentPane().add(BorderLayout.CENTER, centre); btn = new JButton("Connecter"); btn.setBounds(127, 110, 91, 30); btn.setPreferredSize(new Dimension(150, 30)); centre.add(btn); btn.addActionListener(new ActionListener() { @SuppressWarnings("deprecation") public void actionPerformed(ActionEvent ee) { c.ConnexionBD(); conn = c.getConnect(); try { //Traitement Statement stmt_admin = (Statement) conn.createStatement(); query_admin = ("SELECT login_admin, mdp_admin FROM admin"); stmt_admin.executeQuery (query_admin); ResultSet rs_admin = stmt_admin.getResultSet(); while (rs_admin.next()) { Connexion.dbUsername_admin = rs_admin.getString("login_admin"); Connexion.dbPassword_admin = rs_admin.getString("mdp_admin"); if (Connexion.dbUsername_admin==null) throw new IllegalStateException("Connexion.dbUsername_admin is null"); if (Connexion.textField_pseudo==null) throw new IllegalStateException("Connexion.textField_pseudo is null"); if (Connexion.dbPassword_admin==null) throw new IllegalStateException("Connexion.dbPassword_admin is null"); if (Connexion.textField_mdp==null) throw new IllegalStateException("Connexion.textField_mdp is null"); if (Connexion.dbUsername_admin.equals(Connexion.textField_pseudo.getText()) && Connexion.dbPassword_admin.equals(Connexion.textField_mdp.getText())) { Admin admin = new Admin(); admin.setVisible(true); } else{ Connexion.erreur_log = true; } Connexion.recherche_bdd = true; Connexion.erreur_log = false; } } } }); }}