From what I can see in your code the first time you do a search you create a JScrollPane and a TableModel that is not editable.
For every other search you use the variable "modele" and I have no idea where that model is created. It obviously does not override the isCellEditable(...) method.
You have a rather complicated design.
A simpler design would be to create a JTable at the start of your program with the DefaultTableModel with just the column names and no data.
Then in your search method you would use:
to remove all the data from the model.
Then in your while loop you can just create a Vector for each row of data you want to add:
Whatever you do, the key point is to only keep a reference to the DefaultTableModel when you first create the model. In the logic you posted, you never return a reference to the DefaultTableModel so I don't know what "modele" is initialize to. Using my suggestion you would create the table and model at the same time, so you would only ever have one reference to each.
You have two pieces of code which return DefaultTableModel objects. (The piece of code you posted originally, and the one you posted later because you forgot it earlier.) One of them produces an editable table model and the other produces an uneditable table model. In this thread it has been explained how to make your table model uneditable, so you should apply that knowledge to your code.