Overview

Wicketopia is driven by metadata (data about data) you add to your bean classes. It uses the Metastopheles metadata library to generate and access that metadata. Here's an example:

Metadata-Annotated Property...

@Order(1)
@EditorType(TextAreaPropertyEditor.TYPE_NAME)
@Required
@Length(min = 25)
@Hidden(Context.LIST)
public String getDescription()
{
  return description;
}
                

Here, we have a "description" property with annotations on it specifying:

  • The property should be displayed in position 1
  • The property should be edited using a text area
  • The property is required
  • The property must be at least 25 characters
  • The property is hidden in list (showing a list of beans) context

There are other annotations, but you get the idea. Wicketopia uses this metadata to automatically generate components for you that are "bound" to your bean's properties.