-2

This is the code:

public viewGUI() {
    initComponents();
    combobox();
    combobox1();
}


private void initComponents() {

    entityManager = java.beans.Beans.isDesignTime() ? null : javax.persistence.Persistence.createEntityManagerFactory("atul?zeroDateTimeBehavior=convertToNullPU").createEntityManager();
    membersQuery = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT m FROM Members m");
    membersList = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : membersQuery.getResultList();
    cb3 = new javax.swing.JButton();
    cb1 = new javax.swing.JComboBox<>();
    cb2 = new javax.swing.JComboBox<>();
    jButton4 = new javax.swing.JButton();
    jScrollPane2 = new javax.swing.JScrollPane();
    t1 = new javax.swing.JTable();

    setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
    setTitle("View Members");
    getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

    cb3.setFont(new java.awt.Font("Tahoma", 3, 12)); // NOI18N
    cb3.setText("View");
    cb3.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cb3ActionPerformed(evt);
        }
    });
    getContentPane().add(cb3, new org.netbeans.lib.awtextra.AbsoluteConstraints(510, 30, -1, -1));

    cb1.setFont(new java.awt.Font("Tahoma", 3, 12)); // NOI18N
    cb1.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "Select Package-name" }));
    cb1.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cb1ActionPerformed(evt);
        }
    });
    getContentPane().add(cb1, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 30, -1, -1));

    cb2.setFont(new java.awt.Font("Tahoma", 3, 12)); // NOI18N
    cb2.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "Select Session-id" }));
    cb2.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            cb2ActionPerformed(evt);
        }
    });
    getContentPane().add(cb2, new org.netbeans.lib.awtextra.AbsoluteConstraints(350, 30, -1, -1));

    jButton4.setFont(new java.awt.Font("Tahoma", 3, 12)); // NOI18N
    jButton4.setText("Back");
    jButton4.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent evt) {
            jButton4ActionPerformed(evt);
        }
    });
    getContentPane().add(jButton4, new org.netbeans.lib.awtextra.AbsoluteConstraints(600, 30, -1, -1));

    t1.setModel(new javax.swing.table.DefaultTableModel(
        new Object [][] {

        },
        new String [] {
            "member-id", "email", "fname", "lname", "phone", "session-id", "package name"
        }
    ) {
        Class[] types = new Class [] {
            java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.Integer.class, java.lang.String.class, java.lang.String.class
        };

        public Class getColumnClass(int columnIndex) {
            return types [columnIndex];
        }
    });
    jScrollPane2.setViewportView(t1);

    getContentPane().add(jScrollPane2, new org.netbeans.lib.awtextra.AbsoluteConstraints(60, 80, 660, 340));

    setSize(new java.awt.Dimension(803, 530));
    setLocationRelativeTo(null);
}// </editor-fold>                        

private void cb3ActionPerformed(java.awt.event.ActionEvent evt) {                                    
    DefaultTableModel t=(DefaultTableModel) t1.getModel();
    t.setRowCount(0);
    try{
        Class.forName("java.sql.DriverManager");
        Connection con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/atul","root","root");
        Statement st=(Statement) con.createStatement();
        String query="select * from members;";
        ResultSet rs=st.executeQuery(query);
        while(rs.next()){
            String id=rs.getString("member_id");
            String em=rs.getString("email");
            String fn=rs.getString("fname");
            String ln=rs.getString("lname");
            String ph=rs.getString("phone");
            String ses=rs.getString("session_id");
            String pac=rs.getString("pack_name");
            Object row[]={id,em,fn,ln,ph,ses,pac};
            t.addRow(row);
        }
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(this, e.getMessage());
    }
}                                   

private void cb1ActionPerformed(java.awt.event.ActionEvent evt) {                                    
    DefaultTableModel t=(DefaultTableModel) t1.getModel();
    t.setRowCount(0);
    Object s=(String) cb1.getSelectedItem();
    try{
        Class.forName("java.sql.DriverManager");
        Connection con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/atul","root","root");
        Statement st=(Statement) con.createStatement();
        String query="select * from members where pack_name='"+s+"';";
        ResultSet rs=st.executeQuery(query);
        while(rs.next()){
            String id=rs.getString("member_id");
            String em=rs.getString("email");
            String fn=rs.getString("fname");
            String ln=rs.getString("lname");
            String ph=rs.getString("phone");
            String ses=rs.getString("session_id");
            String pac=rs.getString("pack_name");
            Object row[]={id,em,fn,ln,ph,ses,pac};
            t.addRow(row);
        }
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(this, e.getMessage());
    }

}                                   

private void cb2ActionPerformed(java.awt.event.ActionEvent evt) {                                    
    DefaultTableModel t=(DefaultTableModel) t1.getModel();
    t.setRowCount(0);
    Object s=cb2.getSelectedItem();
    try{
        Class.forName("java.sql.DriverManager");
        Connection con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/atul","root","root");
        Statement st=(Statement) con.createStatement();
        String query="select * from members where session_id='"+s+"';";
        ResultSet rs=st.executeQuery(query);
        while(rs.next()){
            String id=rs.getString("member_id");
            String em=rs.getString("email");
            String fn=rs.getString("fname");
            String ln=rs.getString("lname");
            String ph=rs.getString("phone");
            String ses=rs.getString("session_id");
            String pac=rs.getString("pack_name");
            Object row[]={id,em,fn,ln,ph,ses,pac};
            t.addRow(row);
        }
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(this, e.getMessage());
    }
}                                   

private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    FirstGUI F= new FirstGUI();
    this.dispose();
    F.setVisible(true);
}                                        
private void combobox() {
    try {
        Class.forName("java.sql.DriverManager");
        Connection con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/atul","root","root");
        Statement st=(Statement) con.createStatement();
        String query="select * from packages;";
         ResultSet rs=st.executeQuery(query);
        while(rs.next()){
            String name=rs.getString("pname");
            cb1.addItem(name);
        }
    }
    catch(Exception e) {
        JOptionPane.showMessageDialog(this, e.getMessage());
    }
}
private void combobox1() {
    try {
        Class.forName("java.sql.DriverManager");
        Connection con=(Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/atul","root","root");
        Statement st=(Statement) con.createStatement();
        String query="select * from batch;";
         ResultSet rs=st.executeQuery(query);
        while(rs.next()){
            String name=rs.getString("session_id");
            cb2.addItem(name);
        }
    }
    catch(Exception e) {
        JOptionPane.showMessageDialog(this, e.getMessage());
    }
}
/**
 * @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 ("Windows".equals(info.getName())) {
                javax.swing.UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } catch (ClassNotFoundException ex) {
        java.util.logging.Logger.getLogger(viewGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (InstantiationException ex) {
        java.util.logging.Logger.getLogger(viewGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (IllegalAccessException ex) {
        java.util.logging.Logger.getLogger(viewGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
    } catch (javax.swing.UnsupportedLookAndFeelException ex) {
        java.util.logging.Logger.getLogger(viewGUI.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 viewGUI().setVisible(true);
        }
    });
}                

This jframe I am creating to view all the values of my members table. Initially members table's column member-id was of datatype integer and it was working perfectly but now when I have changed it to datatype varchar and inserted one string 'm11' it's giving me that java.objeect error. And if I delete that string value, it works perfectly fine. Can anyone tell me what the error is? This is the error:

Exception Description: The object [m11], of class [class java.lang.String], 
could not be converted to [class java.lang.Integer].
Internal Exception: java.lang.NumberFormatException: For input string: "m11"
Exception in thread "AWT-EventQueue-0" 
javax.persistence.PersistenceException: Exception [EclipseLink-3001] 
(Eclipse Persistence Services - 2.5.2.v20140319-9ad6abd): 
org.eclipse.persistence.exceptions.ConversionException
Exception Description: The object [m11], of class [class java.lang.String], 
could not be converted to [class java.lang.Integer].
Internal Exception: java.lang.NumberFormatException: For input string: "m11"
at 


 org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:480)
at apppackage.viewGUI.initComponents(viewGUI.java:41)
at apppackage.viewGUI.<init>(viewGUI.java:25)
at apppackage.viewGUI$6.run(viewGUI.java:261)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311).......
atul kumar
  • 99
  • 1
  • 10
  • 1
    `m11` is not a number – achAmháin Nov 13 '17 at 14:30
  • check the api for the Integer class, and you'll find all you need to convert it, provided that it is a valid Integer value – Stultuske Nov 13 '17 at 14:31
  • 4
    Please provide a [mcve] (note "minimal") - 90% of the code you've posted is irrelevant to your question. – assylias Nov 13 '17 at 14:31
  • i posted all of the code as i had no idea what to post cause i don't know error is int which part of the code... – atul kumar Nov 13 '17 at 14:36
  • @atulkumar `at apppackage.viewGUI.initComponents(viewGUI.java:41)` means the exception is thrown on line 41 of the `ViewGUI` class. – assylias Nov 13 '17 at 14:36
  • membersList = java.beans.Beans.isDesignTime() ? java.util.Collections.emptyList() : membersQuery.getResultList(); – atul kumar Nov 13 '17 at 14:38
  • that is line no 41 – atul kumar Nov 13 '17 at 14:38
  • 1
    See [What is a stack trace, and how can I use it to debug my application errors?](http://stackoverflow.com/q/3988788/418556) Programmers should expect to see many of these types of messages while programming, and need to be able to solve (or at least gain a much deeper understanding of) most of them with a little research. – Andrew Thompson Nov 13 '17 at 14:42
  • can't find anything.. – atul kumar Nov 13 '17 at 14:53

1 Answers1

2

org.eclipse.persistence.internal.jpa.QueryImpl.getResultList(QueryImpl.java:480) at apppackage.viewGUI.initComponents(viewGUI.java:41)

The error is in the getResultList(...) method which I would guess is reading data from your database and creating your TableModel

Class[] types = new Class [] 
{
    java.lang.String.class, java.lang.String.class, java.lang.String.class,
    java.lang.String.class, java.lang.Integer.class, java.lang.String.class,
    java.lang.String.class
}    

Note from your custom TableModel code you say that the 5th column contains Integer data!

But your error message says:

The object [m11], of class [class java.lang.String], could not be converted to [class java.lang.Integer].

So this tells me the data in your database is a String, so you need to change your getColumnClass(..) method to return a String for that column, not Ingeter.

camickr
  • 321,443
  • 19
  • 166
  • 288