Java-Based Apache Wicket Gets an Update

The Apache Software Foundation (ASF) has released an update of its Wicket Web application framework.

Version 6.0 of the lightweight, Java-based framework comes with a revamped AJAX JavaScript library, out-of-the box JQuery integration, and OSGi-compatible packaging, among other improvements.   

Software architect Jonathan Locke created the framework in 2008 to provide an open source, component-oriented model for Web app development that would reduce the complexity associated with the creation and maintenance of Java Web applications. The framework he developed is similar to JavaServer Faces. Pages and Components in Wicket are real Java objects that support encapsulation, inheritance and events. And because the framework is based on plain Java and HTML (in parallel, but never mixed), Java jocks can use their existing skillsets and their favorite HTML editors to write Wicket apps.

Martijn Dashorst, a software engineer and vice president of the Apache Wicket project, said in a blog post that this sixth release of Wicket "delivers a reinvigorated implementation of our client side API," adding, "We have updated and broadened the capability and flexibility of many existing features throughout the framework."

The list of enhancements in Wicket 6.0 includes an AJAX JavaScript library re-implemented using JQuery, the free, open-source, cross-browser JavaScript library designed to simplify the client-side scripting of HTML. According to the ASF blog, it's now easier to integrate JQuery plugins into Wicket applications, and developers can even provide their own version of JQuery. This new implementation of AJAX also makes it possible for Wicket users to alter any aspect of AJAX through AjaxRequestAttributes.

Also new in Wicket 6.0, JavaScript event registration replaces inline attributes for AJAX components, which makes it possible to attach multiple event listeners to a markup tag. This change also cleans up the rendered markup considerably, the ASF says, and reduces the amount of generated markup.

This release also adds support for large data sets -- a.k.a. Big Data -- through changes in the IDataProvider, implementations of which now use long instead of int for index and size parameters, with the goal of better alignment with the Java Persistence API and other persistency frameworks.

Packaging in this version of the framework is compatible with OSGi bundles to make it easier to deploy Wicket apps in an OSGi environment. The module-based design principles defined by the OSGi (Open Services Gateway Initiative) have emerged as the defacto means of componentizing enterprise Java. In this version of the framework, some classes have been moved to different packages (the full list is available on the migration guide).

The ASF lists some big-name Wicket users on the project Web site, including Walmart, Symantec and the Dutch IRS. 

Wicket 6.0 requires Java 6, which means that Wicket apps running earlier versions of Java must upgrade, the ASF says, including their Java runtimes.

Released under the Apache Software License v 2.0, Apache Wicket is available now for download. The ASF has also published a technical fact sheet on this release.

About the Author

John K. Waters is the editor in chief of a number of sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].