0

I've been trying to run my Java program as a GUI with booking applications. It connects three worksheets of code. The code itself has no errors and is synched to a MySQL database, however when running the program, NetBeans never finishes, as the button functionalities leave the program "loading" forever.

1

I also receive this error in the output against the JDBC Driver, and others I can't interpret. I have re-downloaded my Java JDBC driver many times so this is a mystery to me. See below output:

SEVERE: null
java.lang.ClassNotFoundException: con.mysql.jdbc.Driver
at java.base / jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java: 581)
at java.base / jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java: 178)
at java.base / java.lang.ClassLoader.loadClass(ClassLoader.java: 521)
at java.base / java.lang.Class.forName0(Native Method)
at java.base / java.lang.Class.forName(Class.java: 315)
at Logins.booking.connect(booking.java: 89)
at Logins.booking. < init > (booking.java: 56)
at Logins.Login.jbtnLoginActionPerformed(Login.java: 182)
at Logins.Login$2.actionPerformed(Login.java: 68)
at java.desktop / javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java: 1967)
at java.desktop / javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java: 2308)
at java.desktop / javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java: 405)
at java.desktop / javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java: 262)
at java.desktop / javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java: 279)
at java.desktop / java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java: 297)
at java.desktop / java.awt.Component.processMouseEvent(Component.java: 6635)
at java.desktop / javax.swing.JComponent.processMouseEvent(JComponent.java: 3342)
at java.desktop / java.awt.Component.processEvent(Component.java: 6400)
at java.desktop / java.awt.Container.processEvent(Container.java: 2263)
at java.desktop / java.awt.Component.dispatchEventImpl(Component.java: 5011)
at java.desktop / java.awt.Container.dispatchEventImpl(Container.java: 2321)
at java.desktop / java.awt.Component.dispatchEvent(Component.java: 4843)
at java.desktop / java.awt.LightweightDispatcher.retargetMouseEvent(Container.java: 4918)
at java.desktop / java.awt.LightweightDispatcher.processMouseEvent(Container.java: 4547)
at java.desktop / java.awt.LightweightDispatcher.dispatchEvent(Container.java: 4488)
at java.desktop / java.awt.Container.dispatchEventImpl(Container.java: 2307)
at java.desktop / java.awt.Window.dispatchEventImpl(Window.java: 2772)
at java.desktop / java.awt.Component.dispatchEvent(Component.java: 4843)
at java.desktop / java.awt.EventQueue.dispatchEventImpl(EventQueue.java: 772)
at java.desktop / java.awt.EventQueue$4.run(EventQueue.java: 721)
at java.desktop / java.awt.EventQueue$4.run(EventQueue.java: 715)
at java.base / java.security.AccessController.doPrivileged(Native Method)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 85)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 95)
at java.desktop / java.awt.EventQueue$5.run(EventQueue.java: 745)
at java.desktop / java.awt.EventQueue$5.run(EventQueue.java: 743)
at java.base / java.security.AccessController.doPrivileged(Native Method)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 85)
at java.desktop / java.awt.EventQueue.dispatchEvent(EventQueue.java: 742)
at java.desktop / java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java: 203)
at java.desktop / java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 124)
at java.desktop / java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java: 113)
at java.desktop / java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 109)
at java.desktop / java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 101)
at java.desktop / java.awt.EventDispatchThread.run(EventDispatchThread.java: 90)

Exception in thread "AWT-EventQueue-0"
java.lang.NullPointerException
at Logins.booking.jButton1ActionPerformed(booking.java: 527)
at Logins.booking$1.actionPerformed(booking.java: 413)
at java.desktop / javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java: 1967)
at java.desktop / javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java: 2308)
at java.desktop / javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java: 405)
at java.desktop / javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java: 262)
at java.desktop / javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java: 279)
at java.desktop / java.awt.Component.processMouseEvent(Component.java: 6635)
at java.desktop / javax.swing.JComponent.processMouseEvent(JComponent.java: 3342)
at java.desktop / java.awt.Component.processEvent(Component.java: 6400)
at java.desktop / java.awt.Container.processEvent(Container.java: 2263)
at java.desktop / java.awt.Component.dispatchEventImpl(Component.java: 5011)
at java.desktop / java.awt.Container.dispatchEventImpl(Container.java: 2321)
at java.desktop / java.awt.Component.dispatchEvent(Component.java: 4843)
at java.desktop / java.awt.LightweightDispatcher.retargetMouseEvent(Container.java: 4918)
at java.desktop / java.awt.LightweightDispatcher.processMouseEvent(Container.java: 4547)
at java.desktop / java.awt.LightweightDispatcher.dispatchEvent(Container.java: 4488)
at java.desktop / java.awt.Container.dispatchEventImpl(Container.java: 2307)
at java.desktop / java.awt.Window.dispatchEventImpl(Window.java: 2772)
at java.desktop / java.awt.Component.dispatchEvent(Component.java: 4843)
at java.desktop / java.awt.EventQueue.dispatchEventImpl(EventQueue.java: 772)
at java.desktop / java.awt.EventQueue$4.run(EventQueue.java: 721)
at java.desktop / java.awt.EventQueue$4.run(EventQueue.java: 715)
at java.base / java.security.AccessController.doPrivileged(Native Method)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 85)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 95)
at java.desktop / java.awt.EventQueue$5.run(EventQueue.java: 745)
at java.desktop / java.awt.EventQueue$5.run(EventQueue.java: 743)
at java.base / java.security.AccessController.doPrivileged(Native Method)
at java.base / java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java: 85)
at java.desktop / java.awt.EventQueue.dispatchEvent(EventQueue.java: 742)
at java.desktop / java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java: 203)
at java.desktop / java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 124)
at java.desktop / java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java: 113)
at java.desktop / java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 109)
at java.desktop / java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 101)
at java.desktop / java.awt.EventDispatchThread.run(EventDispatchThread.java: 90)

This is what's in my Libraries. Is there something additional that I need to install?

2

And here's my code:

/*
 * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
 * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template
 */
package Logins;
import javax.swing.JOptionPane;
import java.awt.Toolkit;
import java.awt.event.WindowEvent;
import Logins.booking;
/**
 *
 * @author user
 */
public class Login extends javax.swing.JFrame {

    /**
     * Creates new form Login
     */
    public Login() {
        initComponents();
    }

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jPassword = new javax.swing.JPasswordField();
        jtxtUsername = new javax.swing.JTextField();
        jbtnLogin = new javax.swing.JButton();
        jbtnReset = new javax.swing.JButton();
        jbtnExit = new javax.swing.JButton();
        jLabel1 = new javax.swing.JLabel();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0), 30));

        jLabel2.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jLabel2.setText("Username ");

        jLabel3.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jLabel3.setText("Password ");

        jPassword.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jPassword.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0), 4));
        jPassword.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jPasswordActionPerformed(evt);
            }
        });

        jtxtUsername.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jtxtUsername.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0), 4));

        jbtnLogin.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jbtnLogin.setText("Login");
        jbtnLogin.setToolTipText("");
        jbtnLogin.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbtnLoginActionPerformed(evt);
            }
        });

        jbtnReset.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jbtnReset.setText("Reset");
        jbtnReset.setToolTipText("");
        jbtnReset.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbtnResetActionPerformed(evt);
            }
        });

        jbtnExit.setFont(new java.awt.Font("Tahoma", 1, 36)); // NOI18N
        jbtnExit.setText("Exit ");
        jbtnExit.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jbtnExitActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGap(43, 43, 43)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel3)
                            .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 203, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(84, 84, 84)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jtxtUsername, javax.swing.GroupLayout.PREFERRED_SIZE, 495, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 495, javax.swing.GroupLayout.PREFERRED_SIZE)))
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGap(44, 44, 44)
                        .addComponent(jbtnLogin, javax.swing.GroupLayout.PREFERRED_SIZE, 202, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(jbtnReset, javax.swing.GroupLayout.PREFERRED_SIZE, 199, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(78, 78, 78)
                        .addComponent(jbtnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 217, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(24, Short.MAX_VALUE))
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGap(56, 56, 56)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jtxtUsername, javax.swing.GroupLayout.PREFERRED_SIZE, 43, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 52, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(94, 94, 94)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPassword, javax.swing.GroupLayout.PREFERRED_SIZE, 37, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel3))
                .addGap(77, 77, 77)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jbtnExit, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                    .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(jbtnLogin)
                        .addComponent(jbtnReset)))
                .addContainerGap())
        );

        jLabel1.setFont(new java.awt.Font("Tahoma", 1, 72)); // NOI18N
        jLabel1.setText("ACME Login System");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap(337, Short.MAX_VALUE)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(154, 154, 154))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 727, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(224, 224, 224))))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGap(21, 21, 21)
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(139, Short.MAX_VALUE))
        );

        pack();
    } // </editor-fold>                        

    private void jPasswordActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
    }

    private void jbtnExitActionPerformed(java.awt.event.ActionEvent evt) {
        System.exit(0);
    }

    private void jbtnLoginActionPerformed(java.awt.event.ActionEvent evt) {

        String password = jPassword.getText();
        String username = jtxtUsername.getText();

        if (password.contains("bill95") && (username.contains("billbarnes@acme.com"))) {
            jtxtUsername.setText(null);
            jPassword.setText(null);
            systemExit();

            booking Info = new booking();
            Info.setVisible(true);
        } else {

            JOptionPane.showMessageDialog(null, "Invalid Login Details", "Login Error", JOptionPane.ERROR_MESSAGE);
            jPassword.setText(null);
            jtxtUsername.setText(null);
        }
    }

    private void jbtnResetActionPerformed(java.awt.event.ActionEvent evt) {
        jtxtUsername.setText(null);
        jPassword.setText(null);
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /* Set the Nimbus look and feel */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
         * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info: javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /* Create and display the form */
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Login().setVisible(true);
            }
        });
    }

    // Variables declaration - do not modify                     
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPasswordField jPassword;
    private javax.swing.JButton jbtnExit;
    private javax.swing.JButton jbtnLogin;
    private javax.swing.JButton jbtnReset;
    private javax.swing.JTextField jtxtUsername;
    // End of variables declaration                   

    private void systemExit() {
        WindowEvent winCloseing = new WindowEvent(this, WindowEvent.WINDOW_CLOSING);
    }

}
Mark Rotteveel
  • 100,966
  • 191
  • 140
  • 197
Alias
  • 1
  • 1

0 Answers0