I'm trying to input some details about student to the program. when i press the save button its giving an exception error like this,
"Exception in thread "AWT-EventQueue-0" java.lang.UnsupportedOperationException: Not supported yet."
public static ArrayList<Student> arrayStudent = new ArrayList<Student>();
public static void Student(Student student){
try{
BufferedWriter buffer = new BufferedWriter(new FileWriter("Students.txt", true));
buffer.write("Name : "+student.getFirstName()+" "+student.getSurname()+"\nNIC No : "+student.getNICNo()+" "+"\nBatch Code : "+student.getBatchCode()+" "+"\nStudent No : "+student.getStudentNo()+" "+"\nTelephone No : "+student.getTelNo());
buffer.newLine();
buffer.close();
}
catch(IOException ex){
Logger.getLogger(Arraylists.class.getName()).log(Level.SEVERE, null, ex);
}
public class addStudent extends JFrame {
public addStudent() {
initComponents();
setTitle("Add Student");
setBounds(0, 0, 410, 550);
setIcon();
getContentPane().setBackground(Color.BLACK);
jTextField1.setText("");
jTextField2.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
}
public void addStudent(){
Student newStudent= new Student();
newStudent.setFirstName(jTextField1.getText());
newStudent.setSurname(jTextField2.getText());
newStudent.setNICNo(jTextField4.getText());
newStudent.setBatchCode(jTextField5.getText());
newStudent.setStudentNo(jTextField6.getText());
newStudent.setTelNo(jTextField7.getText());
}
public boolean checkEmpty(){
boolean checkEmpty = false;
if(jTextField1.getText().isEmpty()||jTextField1.getText().isEmpty()||jTextField2.getText().isEmpty()||jTextField4.getText().isEmpty()||jTextField5.getText().isEmpty()||jTextField6.getText().isEmpty()||jTextField7.getText().isEmpty())
{
checkEmpty = true;
}
return checkEmpty;
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Student newStudent = new Student();
newStudent.setFirstName(jTextField1.getText());
newStudent.setSurname(jTextField2.getText());
newStudent.setNICNo(jTextField4.getText());
newStudent.setBatchCode(jTextField5.getText());
newStudent.setStudentNo(jTextField6.getText());
newStudent.setTelNo(jTextField7.getText());
if(checkEmpty()){
JPanel msg = new JPanel();
JOptionPane.showMessageDialog(msg, "Please Fill all the Fields!", "Error", JOptionPane.ERROR_MESSAGE);
}
else{
addStudent();
Arraylists.arrayStudent.add(newStudent);
JPanel msg = new JPanel();
JOptionPane.showMessageDialog(msg, "Student Added Successfully!", "Success", JOptionPane.INFORMATION_MESSAGE);
newStudent = null;
this.setVisible(false);
addStudent studentAdded = new addStudent();
studentAdded.setVisible(true);
}
}
public class Student {
private String firstName;
private String surName;
private String NICNo;
private String batchCode;
private String studentNo;
private String telephoneNo;
public Student(String fName, String sName, String nicNo, String batCode, String studNo, String telNo){
this.firstName = fName;
this.surName = sName;
this.NICNo = nicNo;
this.batchCode = batCode;
this.studentNo = studNo;
this.telephoneNo = telNo;
}
public Student() {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
public void setFirstName(String fName){
this.firstName = fName;
}
public String getFirstName(){
return firstName;
}
public void setSurname(String sName){
this.surName = sName;
}
public String getSurname(){
return surName;
}
public void setNICNo(String nicNo){
this.NICNo = nicNo;
}
public String getNICNo(){
return NICNo;
}
public void setBatchCode(String batCode){
this.batchCode = batCode;
}
public String getBatchCode(){
return batchCode;
}
public void setStudentNo(String studNo){
this.studentNo = studNo;
}
public String getStudentNo(){
return studentNo;
}
public void setTelNo(String telNo){
this.telephoneNo = telNo;
}
public String getTelNo(){
return telephoneNo;
}
}
public class addStudent extends JFrame {
public addStudent() {
initComponents();
setTitle("Add Student");
setBounds(0, 0, 410, 550);
setIcon();
getContentPane().setBackground(Color.BLACK);
jTextField1.setText("");
jTextField2.setText("");
jTextField4.setText("");
jTextField5.setText("");
jTextField6.setText("");
jTextField7.setText("");
}
public void addStudent(){
Student newStudent= new Student();
newStudent.setFirstName(jTextField1.getText());
newStudent.setSurname(jTextField2.getText());
newStudent.setNICNo(jTextField4.getText());
newStudent.setBatchCode(jTextField5.getText());
newStudent.setStudentNo(jTextField6.getText());
newStudent.setTelNo(jTextField7.getText());
}
public boolean checkEmpty(){
boolean checkEmpty = false;
if(jTextField1.getText().isEmpty()||jTextField1.getText().isEmpty()||jTextField2.getText().isEmpty()||jTextField4.getText().isEmpty()||jTextField5.getText().isEmpty()||jTextField6.getText().isEmpty()||jTextField7.getText().isEmpty())
{
checkEmpty = true;
}
return checkEmpty;
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jPanel3 = new javax.swing.JPanel();
jPanel2 = new javax.swing.JPanel();
jLabel7 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jTextField4 = new javax.swing.JTextField();
jTextField5 = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jTextField6 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
jTextField7 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jComboBox1 = new javax.swing.JComboBox();
jLabel4 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton();
jLabel5 = new javax.swing.JLabel();
jButton2 = new javax.swing.JButton();
jLabel6 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jPanel1.setBackground(new java.awt.Color(0, 0, 0));
jPanel3.setBackground(new java.awt.Color(0, 0, 0));
jPanel3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED, java.awt.Color.white, java.awt.Color.white, java.awt.Color.white, java.awt.Color.white));
jPanel2.setBackground(new java.awt.Color(0, 0, 0));
jLabel7.setForeground(new java.awt.Color(255, 255, 255));
jLabel7.setText("Tel. No : +94");
jTextField2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField2ActionPerformed(evt);
}
});
jLabel1.setForeground(new java.awt.Color(255, 255, 255));
jLabel1.setText("First Name :");
jLabel2.setForeground(new java.awt.Color(255, 255, 255));
jLabel2.setText("Surname :");
jLabel3.setForeground(new java.awt.Color(255, 255, 255));
jLabel3.setText("Sex :");
jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Male", "Female" }));
jComboBox1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jComboBox1ActionPerformed(evt);
}
});
jLabel4.setForeground(new java.awt.Color(255, 255, 255));
jLabel4.setText("NIC No :");
jButton1.setText("Save");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jLabel5.setForeground(new java.awt.Color(255, 255, 255));
jLabel5.setText("Batch Code : CF");
jButton2.setText("Cancel");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jLabel6.setForeground(new java.awt.Color(255, 255, 255));
jLabel6.setText("Student Number : CB");
javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel1)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel4))
.addGap(39, 39, 39)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jTextField1, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jComboBox1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jTextField4, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTextField2)))
.addGroup(jPanel2Layout.createSequentialGroup()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jLabel5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel7, javax.swing.GroupLayout.Alignment.LEADING))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addGap(0, 95, Short.MAX_VALUE)
.addComponent(jButton1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jButton2))
.addComponent(jTextField6)
.addComponent(jTextField7)
.addComponent(jTextField5))))
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addContainerGap(27, Short.MAX_VALUE)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(jTextField6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(jTextField7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(jButton2))
.addContainerGap())
);
javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jLabel8.setFont(new java.awt.Font("Segoe UI Symbol", 1, 18)); // NOI18N
jLabel8.setForeground(new java.awt.Color(255, 255, 255));
jLabel8.setText("Enter Student Details");
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel8)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(21, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel8)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 95, Short.MAX_VALUE)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(24, 24, 24))
);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}// </editor-fold>
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Student newStudent = new Student();
newStudent.setFirstName(jTextField1.getText());
newStudent.setSurname(jTextField2.getText());
newStudent.setNICNo(jTextField4.getText());
newStudent.setBatchCode(jTextField5.getText());
newStudent.setStudentNo(jTextField6.getText());
newStudent.setTelNo(jTextField7.getText());
if(checkEmpty()){
JPanel msg = new JPanel();
JOptionPane.showMessageDialog(msg, "Please Fill all the Fields!", "Error", JOptionPane.ERROR_MESSAGE);
}
else{
addStudent();
Arraylists.arrayStudent.add(newStudent);
JPanel msg = new JPanel();
JOptionPane.showMessageDialog(msg, "Student Added Successfully!", "Success", JOptionPane.INFORMATION_MESSAGE);
newStudent = null;
this.setVisible(false);
addStudent studentAdded = new addStudent();
studentAdded.setVisible(true);
}
}
private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
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(addStudent.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(addStudent.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(addStudent.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(addStudent.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 addStudent().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JComboBox jComboBox1;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField4;
private javax.swing.JTextField jTextField5;
private javax.swing.JTextField jTextField6;
private javax.swing.JTextField jTextField7;
// End of variables declaration
private void setIcon() {
setIconImage(Toolkit.getDefaultToolkit().getImage(getClass().getResource("Icon.png")));
}
}
You have code in your own program that you're not yet showing us, likely in an ActionListener or in a method that one of your ActionListener's calls, that throws this exception. Find it, and fix it, simple as that.
As noted by many, the exception's own Stacktrace message will tell you what lines are causing the exception, but again, I'm betting it will be in a method that has been created by NetBeans and that looks something like:
To fix this, remove the throws statement and instead add code that should be called when this button is pressed.
OK, I was wrong about the location, but correct with my overall thoughts, your code is throwing the exception right here in your Student constructor:
Again, get rid of this, and instead add appropriate code for this constructor