Home

Contrib: Wicket

Lead(s): Former user (Deleted), Former user (Deleted)

Description

The goal of Wicket Contrib is to provide a component set to facilitate the development of Sakai tools using Apache Wicket (http://wicket.apache.org). If you're wondering what Wicket is all about, we've started compiling a list of hopefully useful links here. We are also compiling a list of projects that are using Wicket.

We would also like to use this space to plan out how to make Wicket Sakai tool development easier and more transparent. One advantage of the maven 2 build we've put forward in the contrib project is that you can use it to add all the normal Wicket dependencies to a Sakai tool without going through one-by-one and determining if you need wicket-ioc, for example. Of course we'll need to chose some reasonable subset of the Wicket projects to include as dependencies for your average Sakai tool.

Bugs:

JIRA for Sakai-Wicket

Source:

A preliminary skeleton for this effort (along the lines of the Sakai velocity module) is available at https://source.sakaiproject.org/contrib/wicket/trunk/sakai-wicket – it allows developers to take advantage of Wicket's 'markup inheritance' to build tool pages based off of the SakaiPortletWebPage and to extend the SakaiWebApplication class.

An example/template (demonstrating one way to set up the applicationContext.xml and web.xml files and to make use of markup inheritance in this manner) is available at https://source.sakaiproject.org/contrib/wicket/trunk/sakai-wicket-template

A listing of the available components at this point is also available as a child of this page.

Updates:

30-Jul-2008: As per discussion on sakai-dev list, we're going to shift sakai-wicket over to build as an external dependency of Sakai so it can be distributed by jar in the Maven repo for inclusion in core and provisional components. This will mean the establishment of a new version style – 1.0 will be the first release version. This will also involve some refactoring to remove dependencies on Sakai core APIs.

10-Apr-2008: Created a 2.5.x branch of the project which is identical to trunk at this moment, except that it's pom.xml version is set to M2 (versus SNAPSHOT).

17-Dec-2007: Added an (incomplete) example of a new site-membership tool based on Marc Brierley's specs.

10-Dec-2007: Added a bunch of new table and 'presenter' components to mimic the standard Sakai data grid behaviors and allow sub-item actions along the lines of the Assignments grid control

16-Nov-2007: Added an FCKEditor panel

17-Sep-2007: Added a new component (AjaxRolloverImageButton) to the contrib project

10-Oct-2007: Agora now uses Wicket as its display technology.

Plans:

22-Jan-2008 The project is moving ahead at good speed. We've got a number of useful components to replicate Sakai behavior seen in Velocity or JSF, including an FCKEditor panel, a BasicDataTable (mimicing a standard Sakai data grid), an EnhancedDataPresenter with search and filter, and a recent contribution from Nuno Fernandes centered on the picking up of the current skin from the ServerConfigurationService.