Ciao a tutti,
Ho un problema nel recuperare i dati da una JTable ordinabile sfruttando un MouseListener.
Essendo ordinabile quando la riordino con l'ascoltatore riesco sempre a recuperare l'id esatto della riga che ho clickato, però quando cerco di recuperare i dati, questi sono relativi alla tabella non ordinata.

In pratica io creo una JTable all'interno di un JScrollPane, la tabella è creata con un AbstractTableModel(ResultTableModel a cui è passato un file txt) ed ordinata con un TableRowSorter.
codice:
resultTable = new JTable(new ResultTableModel(file));
scrollPane = new JScrollPane(resultTable);
		
resultTable.setFillsViewportHeight(true);
resultTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
//resultTable.setAutoCreateRowSorter(true);
resultTable.addMouseListener(new DoubleClickListener());		
		
TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(resultTable.getModel());
resultTable.setRowSorter(sorter);

L'AbstractTableModel è semplicissimo, l'ho copiato dal sito oracle:
codice:
class ResultTableModel extends AbstractTableModel{

private String[] columnNames = {"Col1","Col2","Col3","Col4","Col5"};
private Object[][] data;
	
public ResultTableModel(FileRead file){ data = file.getArrayFile(); }
	
public int getColumnCount() { return columnNames.length; }
public int getRowCount() { return data.length; }
public String getColumnName(int col) { return columnNames[col]; }
public Object getValueAt(int row, int col) { return data[row][col]; }
public Class getColumnClass(int c) { return getValueAt(0, c).getClass(); }
public boolean isEditable(){ return false; }
}
E infine questo è il mio ascoltatore:
codice:
class DoubleClickListener extends MouseAdapter{
	private int clickRow = 0;

	public void mouseClicked(MouseEvent e){
		if(e.getClickCount() < 2)
			return;
		if(e.getButton() != MouseEvent.BUTTON1)
			return;
		
		JTable table = (JTable)e.getSource();
				
		JOptionPane.showMessageDialog(null,
" "+
table.getModel().getValueAt(clickedRow,1)+
" - "+
table.getModel().getValueAt(clickedRow,3)+
" - "+
table.getModel().getValueAt(clickedRow,0)+
" - "+
table.getModel().getValueAt(clickedRow,2)+
" - "+
table.getModel().getValueAt(clickedRow,4));
	}
}
Cosi facendo recupero i dati della tabella non ordinata, dove sbaglio?