Why Wings?

Though MVC and Swing are well established and well known, most web application frameworks on the market are still stuck in the paradigm of page-flow oriented design principles and require a heavy mixture of different technologies like XML, Java, JSP, Tag libraries, etc.

This has heavy implications on the development process as it disables full reuse but requires to generate, write and maintain many different artifacts during the whole process. Think of JSP template files, XML based page flow descriptions, required form beans, and so on: All of these must be written, maintained and kept in sync for every dialog of your project.

What's new in wingS?

In contrast wingS offers a very efficient and sophisticated way to implement and design complex real-world applications in pure Java, enabling to fully leverage modern software design principles like inheritance, component-oriented design, refactoring and all the others without making a stop on the web tier.

Therefore Wings provides an API for designing web applications which is nearly identical with the well proven Java Swing API for classical desktop-based applications.

This similarity to the well known Java Swing API as well as the modern event- and component-oriented design principles of the Wings framework enable you and your development team to quickly focus fully on the implementation of your business-critical logic by simply (re)using well known (customized) components instead of being bothered with web tier details throughout the whole development process and during the maintenance lifecycle.

Refer to the hellowings example on the Examples-page for a very simple example of efficient and pure Java-based web application design with Wings!

Features

Beneath the very powerful approach of a pure Java API for web applications, Wings 2 also has some additional, outstanding Features to offer, like:

  • Powerful set of widgets including Trees, Tables, Menus, etc.
  • Highly flexible dynamic layout managers
  • Drag & Drop support (see WingSet)
  • Server-side code execution (AJAX / DWR)
  • Component context menus
  • Handling of browser back navigation
  • and more

For a quick overview of these feature you may want to take a look at the WingSet demo which is contained in this distribution or can be accessed online in the demos section.