I have a "Save Button" for a form with the following code. On click, the data in the text boxes should be saved to the database. The button also contains a try..catch block to handle resource clean up to prevent a lock out.
private void saveBtnActionPerformed(java.awt.event.ActionEvent evt) {
String user = usernameText.getText();
String pass = passwordField.getText();
String pass2 = confirmPasswordField.getText();
String job = jobBox.getSelectedItem().toString();
try{
if (pass2.equals(pass)) {
rs.moveToInsertRow();
rs.updateString("username", user);
rs.updateString("password", pass);
rs.updateString("jobtitle", job);
rs.insertRow();
JOptionPane.showMessageDialog(this, "New Record Has Been Added!");
}
else {
JOptionPane.showMessageDialog(this, "Your passwords do not match");
this.dispose();
newEmployeeFrame a = new newEmployeeFrame();
a.setVisible(true);
}
}
catch(SQLException err){
}
finally{
try{
rs.close();
stmt.close();
this.dispose();
newEmployeeFrame a = new newEmployeeFrame();
a.setVisible(true);
}
catch(Exception e){
//try-catch block to encapsulate finally block for resource closing
//to prevent lock obtain error
}
when I click it, i get these error messages:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at newEmployeeFrame.saveBtnActionPerformed(newEmployeeFrame.java:195)
at newEmployeeFrame.access$100(newEmployeeFrame.java:19)
at newEmployeeFrame$2.actionPerformed(newEmployeeFrame.java:76)
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:6516)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6281)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4872)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4698)
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:4698)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
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:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
BUILD SUCCESSFUL (total time: 13 seconds)
Please Help.. Thankks!