я это напечатал DataRow:ClassCastException org.jdesktop.DataSet.DataRow к TypedDataRow
import org.jdesktop.dataset.DataRow;
public class MainDataRow extends DataRow {
private MainDataTable baseDataTable;
protected MainDataRow(MainDataTable dt) {
super(dt);
this.baseDataTable = dt;
}
public int getId() { return (int) super.getValue(baseDataTable.getId()); };
public void setId(int id) { super.setValue(baseDataTable.getColId(), id); };
public int getDelta() { return (int) super.getValue(baseDataTable.getColDelta()); };
public void setDelta(int delta) { super.setValue(baseDataTable.getColDelta(), delta); };
public String getNombre() { return (String) super.getValue(baseDataTable.getColNombre()); };
public void setNombre(String nombre) { super.setValue(baseDataTable.getColNombre(), nombre); };
MainDataTable хорошо сформирован и работает отлично. Теперь то, что я пытаюсь сделать, это добавить новую строку в MainDataTable:
MainDataTable dt = new MainDataTable(ds);
MainDataRow dr = (MainDataRow) dt.appendRow();
Я получаю ClassCastException. В чем проблема? Благодарю.
Edit MainDataTable является типизированным DataTable, без переопределения на appendRow():
public class TypedDataTable<TypeOfRow> extends DataTable {
...
}
public class MainDataTable extends TypedDataTable<MainDataRow> {
...
}
Я принимаю 'ManDataTable.appendRow()' возвращает 'DataRow', вы можете указать его код? – amit
Да, это стандартный org.jdesktop.dataset.DataTable (отредактирован) – Miquel
Ответ здесь http://stackoverflow.com/questions/10481515/casting-datarow-to-strongly-typed-datarow – Miquel