title: How to make columns editable in special abstract model JTable
body: <p>Hey guys i doing my assignment and now i have the problem with non editable cells, actually it became editable, but the result of editing didn't set at arraylist, I tried many solution from internet, but it doesn't work.
  So my work like registration system which get information about guest, and then stored it into csv file. In additional function the program must let display, update, delete and searching function.</p>
  
  <p>I finished all, without update,delete and searching. Can you please looking my code and help me or give the advice, link or something useful.</p>
  
  <p>this is my abstract model:</p>
  
  <pre><code>public class ddispmodel extends AbstractTableModel {
  private final String[] columnNames = { "FirstName", "SecondName", "Date of                                                     
  birth", "Gender", "Email", "Address", "Number", "Attending","ID" };
  private ArrayList&lt;String[]&gt; Data = new ArrayList&lt;String[]&gt;();
  private boolean editable;
  
  
  public void AddCSVData(ArrayList&lt;String[]&gt; DataIn) {
      this.Data = DataIn;
      this.fireTableDataChanged();
  }
  
  @Override
  public int getColumnCount() {
      return columnNames.length;// length;
  }
  
  @Override
  public int getRowCount() {
      return Data.size();
  }
  
  @Override
  public String getColumnName(int col) {
      return columnNames[col];
  }
  
  @Override
  public Object getValueAt(int row, int col) {
      return Data.get(row)[col];
  }
  public boolean isCellEditable(int row, int col) { 
      setValueAt(Data, row, col);
      this.fireTableCellUpdated(row, col);
      return true;
  }
  }
  </code></pre>
  
  <p>This is part of my main class
  It is action Listener of menu item witch activate displaying function
  (I didn't copy all class, because it nearly 1000 lines, but if it necessary, i can submit all code )</p>
  
  <pre><code>  dlog.addActionListener(new ActionListener (){
  
    public void actionPerformed(ActionEvent e){
        CSVFileDomestic Rd = new CSVFileDomestic();
           ddispmodel ddispm = new ddispmodel();
              ddisp.setModel(ddispm);
              File DataFile = new File("D:\\cdne4\\WorkPlace\\Domestic.csv");
              ArrayList&lt;String[]&gt; Rs2 = Rd.ReadCSVfile(DataFile);
              ddispm.AddCSVData(Rs2);
              System.out.println("Rows: " + ddispm.getRowCount());
              System.out.println("Cols: " + ddispm.getColumnCount());
  
        cl.show(cp, "dispDomPanel");
    }
    });
  </code></pre>
  
  <p>and File class which convert date from csv to arraylist</p>
  
  <pre><code> import java.io.BufferedReader;
   import java.io.File;
   import java.io.FileReader;
   import java.util.ArrayList;
   import java.util.Arrays;
  
   public class CSVFileDomestic {
          private final ArrayList&lt;String[]&gt; Rs = new ArrayList&lt;String[]&gt;();
          private String[] OneRow;
  
          public ArrayList&lt;String[]&gt; ReadCSVfile(File DataFile) {
              try {
                  BufferedReader brd = new BufferedReader(new              
              FileReader(DataFile));    
            while (brd.ready()) {
                      String st = brd.readLine();
                      OneRow = st.split(",");
                      Rs.add(OneRow);
                      System.out.println(Arrays.toString(OneRow));
                  } 
              } 
              catch (Exception e) {
                  String errmsg = e.getMessage();
                  System.out.println("File not found:" + errmsg);
              } 
              return Rs;
  </code></pre>
  
  <p>I am new at Java and this is my first program , please can you explain more easily</p>