Pax Wicket

PAX-WICKET is an OSGi-based extension to the Apache Wicket framework allowing to run Wicket applications in bundles easily on OSGi platforms.

Whereas a typical Wicket application requires that all component wiring be done at compile time, this extension allows you to model the Wicket application, and move those model parts around and not be resolved until request time. You can add and remove parts of the Wicket application without restarting the application, simply by loading and unloading OSGi bundles.

In a nutshell PAX-WICKET tries to solve the following problem statement:

Develop the easiest possible solution to integrate wicket with OSGi, providing the broadest integration into existing OSGi enterprise technologies (JPA, JNDI, Spring, Blueprint, ...).

For this goal PAX-WICKET provides the following features:

  • Full integration at HttpService Level; No need for war files and web.xml
  • Spring and Blueprint bean and service injection on bundle level
  • Delegating classloader and injection loading model.
  • Easy usage via namespace support for Spring and Blueprint
  • Filter and context-param configuration via OSGi
  • Full application configuration via OSGi services
  • Multiple applications on the same port
  • Full Apache Karaf  integration
  • Support for JSR333 (to come soon)

Based on those features PAX-WICKET allows the following runtime system:

+-----------------+  +------------+   +-------------+   +-----------+   +-----------+   +-------------+
| HTTP Service    |  | Pax Wicket |   |  Bus Logic  |   | Component |   |   Page    |   | Application |
| (Standard OSGi) |  |   Service  |   |  bundle(s)  |   | bundle(s) |   | bundle(s) |   |  bundle(s)  |
+-----      ------+  +---      ---+   +---      ----+   +--      ---+   +---      --+   +---      ----+
      \    /             \    /           \    /           \    /           \    /          \    /
+----- \  / ------------- \  / ----------- \  / ----------- \  / ----------- \  / ---------- \  / ----+
|     \ \/ /             \ \/ /           \ \/ /           \ \/ /           \ \/ /          \ \/ /    |
|      \  /               \  /             \  /             \  /             \  /            \  /     |
|       \/                 \/               \/               \/               \/              \/      |
|                                                                                                     |
|                                           OSGi Runtime Platform                                     |
+-----------------------------------------------------------------------------------------------------+

Interested? Jump into the Quickstart guide to find out how to use PAX-WICKET. If you still have some questions try the FAQ and the full Documentation or simply join the PAX-WICKET community at the ops4j mailing-lists or irc channel.

Is PAX-WICKET already finished? Although the core of pax-wicket is quite old and stable the framework is still in heavy development. While PAX-WICKET has already a wide range of features there is still a lot of work to do and available :) Feel free to take a look at the Issue Tracker or simply jump into the mailing-lists or irc channel.

-Enjoy

The PAX-Wicket Team