final PFlexTable panel = new PFlexTable();
final Form form = new Form();
final FormField<String> field1 = new StringTextBoxFormField();
field1.setValidator(new NotEmptyFieldValidator());
final FormField<String> field2 = new StringTextBoxFormField();
field2.setValidator(new DoubleFieldValidator());
final FormField<String> field3 = new StringTextBoxFormField();
field3.setValidator(new CompositeFieldValidator(new NotEmptyFieldValidator(), new DoubleFieldValidator()));
final FormField<String> field4 = new StringTextBoxFormField();
field4.setValidator(new CompositeFieldValidator(new NotEmptyFieldValidator(), new EmailFieldValidator()));
final FormField<Boolean> field5 = new CheckBoxFormField();
field5.setValidator(new UncheckedFieldValidator());
final PListBox listBox = new PListBox(true);
listBox.addItem("Item 1");
listBox.addItem("Item 2");
listBox.addItem("Item 3");
listBox.addItem("Item 4");
listBox.addItem("Item 5");
listBox.addItem("Item 6");
final FormField<String> field6 = new StringListBoxFormField(listBox);
field6.setValidator(new NotEmptyFieldValidator());
final FormField<Date> field7 = new DateBoxFormField();
field7.setValidator(new NotEmptyFieldValidator());
final FormField<Date> field8 = new DateBoxFormField();
field7.setValidator(new NotEmptyFieldValidator());
final FormField<String> field9 = new StringTextBoxFormField();
field9.setValidator(new NotEmptyFieldValidator());
final FormField<String> field10 = new StringTextBoxFormField();
field10.setValidator(new TwinFieldValidator("Field doesn't match", field9));
form.addFormField(field1);