O Bean
@Entity
@Table(name = "CURSO")
public class Curso {
@Id
@Column(name = "CODCURSO")
private String codcurso;
@Column(name = "CURSO")
private String curso;
public String getCodcurso() {
return codcurso;
}
public void setCodcurso(String codcurso) {
this.codcurso = codcurso;
}
public String getCurso() {
return curso;
}
public void setCurso(String curso) {
this.curso = curso;
}
}
O Form
@Form
public class CursoForm {
List<Curso> cursos;
public List<Curso> getCursos() {
return cursos;
}
public void setCursos(List<Curso> cursos) {
this.cursos = cursos;
}
@Action
public void Inserir() {
}
@DataProvider(objectField="cursos")
public List<Curso> populaCursos() {
DaoFactory factory = new DaoFactory();
return factory.getCursoDao().listaTudo();
}
}
A View
@ViewHandler
public class CursoView extends JDialog {
SwingBinder binder = null;
public CursoView(Frame owner) {
super(owner);
initComponents();
}
private void initComponents() {
dialogPane = new JPanel();
contentPanel = new JPanel();
scrollPane1 = new JScrollPane();
cursoTable = new JTable(new DefaultTableModel(new String[] {"Codigo", "Curso"}, 0));
cursoTable.setName("curso");
cursoTable.putClientProperty(SwingBinder.COLUMN_NAMES, new String[] {"codcurso", "curso"});
...
binder = new SwingBinder( this, new CursoForm());
binder.bind();
}
}
Está faltando alguma coisa. Porque na minha tabela possuo os cursos mas não é preenchido no JTable.
Minha dúvida é a seguinte eu preciso iterar os objetos da lista ou o genesis faz isso automaticamente.