--- /dev/null
+[[auto-generating-a-form-based-on-a-bean-vaadin-6-style-form]]
+Auto-generating a form based on a bean - Vaadin 6 style Form
+------------------------------------------------------------
+
+In Vaadin 6 it is easy to get a completely auto generated form based on
+a bean instance by creating a `BeanItem` and passing that to a Form. Using
+`FieldGroup` this requires a few extra lines as `FieldGroup` never adds
+fields automatically to any layout but instead gives that control to the
+developer.
+
+Given a bean such as this `Person`:
+
+[source,java]
+....
+public class Person {
+ private String firstName,lastName;
+ private int age;
+ // + setters and getters
+}
+....
+
+You can auto create a form using FieldGroup as follows:
+
+[source,java]
+....
+public class AutoGeneratedFormUI extends UI {
+ @Override
+ public void init(VaadinRequest request) {
+ VerticalLayout layout = new VerticalLayout();
+ setContent(layout);
+
+ FieldGroup fieldGroup = new BeanFieldGroup<Person>(Person.class);
+
+ // We need an item data source before we create the fields to be able to
+ // find the properties, otherwise we have to specify them by hand
+ fieldGroup.setItemDataSource(new BeanItem<Person>(new Person("John", "Doe", 34)));
+
+ // Loop through the properties, build fields for them and add the fields
+ // to this UI
+ for (Object propertyId : fieldGroup.getUnboundPropertyIds()) {
+ layout.addComponent(fieldGroup.buildAndBind(propertyId));
+ }
+ }
+}
+....
- link:AddingJPAToTheAddressBookDemo.asciidoc[Adding JPA to the address book demo]
- link:SimplifiedRPCusingJavaScript.asciidoc[Simplified RPC using JavaScript]
- link:JMeterTesting.asciidoc[JMeter testing]
+- link:AutoGeneratingAFormBasedOnABeanVaadin6StyleForm.asciidoc[Auto-generating a form based on a bean - Vaadin 6 style Form]