The Apache Software Foundation has launched a new version of Wicket, its open source component-based web framework.
The Wicket project, which was formerly housed at SourceForge, moved over to Apache last year; Wicket version 1.3 is the first release bearing the Apache nameplate, said Martijn Dashorst, chairman of the project and a senior software developer at web application development firm Topicus. Enhancements have been made in areas such as AJAX and portal support.
"The purpose [of Apache Wicket] is to make development for Java developers simple as a possible," Dashorst said. "We use a component model for that."
Developers can create components with plain old Java and HTML, Dashorst said. Developing Web applications in Java has been a problem; Apache looks to address this with Wicket, according to Dashorst. "In JSF (JavaServer Faces), for instance, it's fairly hard to create your custom components. You need to have almost a graduate degree to create custom components with JSF," he said.
Apache Wicket's lack of reliance on XML is hailed on the project's website.
"With proper mark-up/logic separation, a POJO [Plain Old Java Objects] data model, and a refreshing lack of XML, Apache Wicket makes developing Web apps simple and enjoyable again. Swap the boilerplate, complex debugging and brittle code for powerful, reusable components written with plain Java and HTML," the site said. Wicket emphasises a logical separation of design and code.
A key improvement in version 1.3 is enhanced AJAX support. "Pages can be a lot more dynamic than previously," Dashorst said.
Also new is the switch to the Apache licence over from the Lesser GPL. "It's more business friendly," because it allows companies to create closed-source products from Wicket, Dashorst said.
A user of Apache Wicket, Nicholas Heudecker, principal at software development firm System Mobile, said his company migrated to Wicket and away from Struts. "With Wicket, it's just a lot easier. There's no extraneous configuration. Everything is controlled within the Java code," Heudecker said. "Once people have an opportunity to take a look at it, they'll really like it."
Although pleased with the extra AJAX support and development features in version 1.3, Heudecker added he wished there were better tools support for IDEs. Heudecker said he uses the JetBrains IntelliJ Idea IDE with Wicket but would like more tools.
Version 1.3 can scale to very large numbers of users with stateless pages and components. An Apache Velocity template engine in version 1.3 allows for user-generated macros in applications such as a content management system.
The logging API in Apache Wicket 1.3 switches from commons-logging to SLF4J (Simple Logging Façade for Java). This bolsters debugging and makes application deployment safer.
Although the current version of Wicket is anchored on Java Development Kit 4, the next release in a couple months will be based on Java 5, gaining benefits such as generics to improve safety, Dashorst said.
Wicket has been downloaded about 120,000 times since it began three years ago. It was moved over to Apache because of infrastructure issues such as spam and sustaining outages in the Subversion repository at SourceForge, Dashorst said.