public EditFormTablePage() {
// Setup customers form
FieldSet fieldSet = new FieldSet("customer");
fieldSet.add(new TextField("name")).setRequired(true);
fieldSet.add(new EmailField("email")).setRequired(true);
fieldSet.add(new InvestmentSelect("investments")).setRequired(true);
fieldSet.add(new DoubleField("holdings"));
DateField dateJoined = new DateField("dateJoined");
dateJoined.setDate(new Date());
fieldSet.add(dateJoined);
customerForm.add(fieldSet);
customerForm.add(new Submit("add", "Add Customer", this, "onAddClick"));
// * #2. Create the FormTable and pass in the existing Form into the
// constructor. FormTable now knows it should not create an internal
// Form instance.
table = new FormTable("table", form);
// Assemble the FormTable columns
table.setClass(Table.CLASS_SIMPLE);
table.setWidth("700px");
table.setPageSize(5);
table.setShowBanner(true);
table.addColumn(new Column("id"));
FieldColumn column = new FieldColumn("name", new TextField());
column.getField().setRequired(true);
column.setVerticalAlign("baseline");
table.addColumn(column);
column = new FieldColumn("email", new EmailField());
column.getField().setRequired(true);
table.addColumn(column);
column = new FieldColumn("investments", new InvestmentSelect());
column.getField().setRequired(true);
table.addColumn(column);
NumberField numberField = new NumberField();
numberField.setSize(5);