Wicket RAD es un framework basado en Wicket que permite generar formularios a partir de anotaciones sobre las entidades Java del modelo de dominio (tipos de campos, orden, validaciones, etc).
Las entidades podrán tener además las anotaciones JPA correspondientes al objeto-relacional.
Ver este ejemplo, donde se tienen primero las anotaciones típicas JPA que relacionan la entidad con la base de datos, y después las anotaciones Wicket RAD que la relacionan con el formulario a generar:
public class PhoneBookEntry implements Identifiable {
@Id
@Column(name="full_name")
private String id;
@Column(name="phone")
private String phonenumber;
@Column(name="country")
private String country;
@Column(name="gender")
private String gender;
@Column(name="active")
private boolean active;
@FieldOrder(1)
@TextField
@Required
@EditScope(EditScope.Scope.CREATE)
@UniqueField
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
@FieldOrder(2)
@TextField
@Required
@Length(min=3, max=20)
public String getPhonenumber() {
return phonenumber;
}
public void setPhonenumber(String phonenumber) {
this.phonenumber = phonenumber;
}
@FieldOrder(3)
@DropDownChoice(CountrySource.class)
public String getCountry() {
return country;
}
public void setCountry(String country) {
this.country = country;
}
@FieldOrder(4)
@RadioGroup(GenderSource.class)
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
@FieldOrder(5)
@CheckBox
public boolean isActive() {
return active;
}
public void setActive(boolean active) {
this.active = active;
}
}
Esta idea de generación de interfaz es similar a
la que veíamos en el scaffolding de Grails.
Puedes descargar el framework (wicket-rad-core) y una pequeña aplicación de ejemplo (wicket-rad-samples) en
sourceforge.
Para probarlo rápidamente leer los archivos readme.txt.
- Con maven basta hacer "mvn clean install" en wicket-rad-core, que descargará automáticamente las dependencias y compilará e instalará el framework en tu repositorio maven.
- Después hacer "mvn clean install" y "mvn exec:java -Dexec.mainClass="org.wicketrad.Server"" para compilar, instalar y ejecutar la aplicación de ejemplo, que estará accesible en http://localhost:8080.
(Vía
TheServerSide.com).