componente para selecionar fecha y JSpinner en una tabla cambia la informacion en las otras filas

Buen Dia Necesito de su ayuda para solucionar dos problemas. inserte un componente para seleccionar fecha en una columna de una tabla y un JSpinner tambien. de la siguiente manera:

Tengo una libreria la cual me ayuda a usar el componente para usar las fechas llamada

RSCalendar

introducir la descripción de la imagen aquí

-tengo una clase llamada tabla_spinner, la cual es la misma para el componente de las fechas

package clases;  import java.awt.Component; import javax.swing.AbstractCellEditor; import javax.swing.JSpinner; import javax.swing.JTable; import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer;  /**  *  * @author ANGELICA  */ public class tabla_spinner extends AbstractCellEditor implements TableCellRenderer,TableCellEditor{     JSpinner spinner=new JSpinner();     Object valorActual;        @Override     public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {         return spinner;//y retornamos el label     }     @Override     public Component getTableCellRendererComponent         (JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {          //si el datos es un objetc osea jlabel         if (value instanceof JSpinner) {             spinner=(JSpinner) value;//lo convertimos a JLabel              return spinner;//y retornamos el label         }          return spinner;     }     @Override     public Object getCellEditorValue() {         return spinner;     }  } 

-y con el siguiente codigo añado el JSpinner y el componente RSCalendar a las tablas

    TableColumn Tcolfechachooser=vencimiento_productos_tabla.getColumnModel().getColumn(1);              Tcolfechachooser.setCellEditor(new tabla_fechachosser());     Tcolfechachooser.setCellRenderer(new tabla_fechachosser());      TableColumn Tcolspinner=vencimiento_productos_tabla.getColumnModel().getColumn(3);     Tcolspinner.setCellEditor(new tabla_spinner());       Tcolspinner.setCellRenderer(new tabla_spinner());      modelo_vencimiento_productos=(DefaultTableModel) vencimiento_productos_tabla.getModel();     Object nuevafila[]={"","","","",""};     modelo_vencimiento_productos.addRow(nuevafila); 
  1. mi problema es que por ejemplo con el JSpinner selecciono un numero en una fila por ejemplo fila (1), y cuando selecciono otra fila por ejemplo fila (2), esta fila seleccionada (la 2) en la columna en la que esta el JSpinner se transfiere el numero de la anterior fila(1). exactamente ocurre con la celda en la cual esta el componente donde selecciono la fecha.Osea que en conclucion el codigo que estoy usando hara esto con todos los componentes.

introducir la descripción de la imagen aquí

  1. mi segundo problema es al tratar de obtener estos datos del JSpinner y el componente para selecionar las fechas. con el siguiente codigo:

    String fecha=String.valueOf(modelo_vencimiento_productos.getValueAt(vencimiento_productos_tabla.getSelectedRow(),1));

    String dias=String.valueOf(modelo_vencimiento_productos.getValueAt(vencimiento_productos_tabla.getSelectedRow(),3));

lo que me recolecta es esto:

-para la fecha:

rojeru_san.componentes.RSDateChooser[,-192,-20,0x0,invalid,layout=javax.swing.GroupLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=16777217,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=240,height=40]] 

-para el numero del JSpinner

javax.swing.JSpinner[,-193,-20,0x0,invalid,layout=javax.swing.plaf.basic.BasicSpinnerUI$  Handler,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.BorderUIResource$  CompoundBorderUIResource@2df0c8a,flags=328,maximumSize=,minimumSize=,preferredSize=]