Thursday, November 18, 2010

Apache Wicket

Apache Wicket is a Java web application framework that bridges the mismatch between stateless HTTP and stateful server-side programming in Java.  Its goal is to be easy, reusable, non-intrusive, safe, and scalable.  Large companies like IBM, VeriSign, Amazon, and SAS have already joined the Wicket community for large, scalable front-end websites or internal projects with a high degree of UI complexity.

My involvement with Wicket is geared toward learning a framework that will enable me to build rich and interactive webpages for the 2011 Solar Decathlon competition.  My initial experience with Wicket was parallel to learning a completely new language.  I would be taking a giant leap into the unknown, but it would be a pivotal point in learning how to create useful real-world applications.  This leap was made much easier with the guidance of ics-wicket-examples.

An interactive web page made with HTML, Java, Wicket, CSS, and Google Visualizations.

My task was to develop a simple but interactive webpage that enabled users to modify the parameters of the  GoogleOMeter seen above.  First, Wicket is used to pull user input values from the webpage into Java.  Second, Java is used to process and edit the chart's parameters with the user's input values.  Finally, the chart is updated and displayed with its new URL.

The key to Wicket was knowing that components in HTML and Java are linked together by a common identifier.  Once this was understood, the next and most difficult step was interpreting user input and responding with appropriate output.  The difficulty was in part due to Wicket's new libraries and API.

From this experience, I learned that the career of a web application developer is not easy.  Jumping from framework to framework is time-consuming and frustrating, but there are tools like Wicket that ease the pain by helping developers create modular components that can be reused between projects.

My Wicket project is available here.

No comments:

Post a Comment