Wicket
Architecture
- Application
- The application class, descending from WebApplication, is the site's starting point.
getHomePage() returns the home WebPage component.
- Component
- Everything in Wicket is a component. A component can render itself as HTML, and persists its state (model)
across page transitions.
- Template
- Components can be associated with an HTML template; the file name (preceeding .html) must be the same as
the component's class name. Elements with a wicket:id attribute are connected to child components.
- Model
- Any object implementing IModel can be the model for a wicket component.
State
Component state appears to be maintained through a combination of URL, hidden fields, and server state.
Source Files
- app/Name.java
- The model.
- app/App.java
- The application.
- app/Index.java
- A component representing the index page.
- app/Index.html
- The template for the index component.
- app/Index$NameWizard.html
- The wizard template.
- app/Index$NameWizard$A.html
- The template for screen A.
- app/Index$NameWizard$B.html
- The template for screen B.
- app/Index$NameWizard$C.html
- The template for screen C.
Deployment
Deployment is the same as for any other Java web application with custom servlets, and can be performed with standard JEE tools.
Tools
A variety of plug-ins are available to add Wicket support to popular Java IDEs.
This application was developed with the NetBeans Wicket module.