Introduction

The unified generic gui toolkit.

What is this all about?

WidgetServer is a component based, server-side, Java/XML rich-client-framework which enables an application to run as either

  • an application with a rich Web client based on AJAX (HTML, XML, CSS, Javascript)
  • an application with a simple Web client based on HTML and CSS
  • a standalone application with a Swing GUI,
  • a client/server application with a thin Swing client,
  • or a mobile application on different devices like PDAs or Smartphones

without any change and without loss of functionality! WidgetServer gives you the choice if you develop a GUI either using

  • HTML markup templates,
  • a Java API like Swing,
  • XML markup
  • or any combination.

WidgetServer provides a clean, object-oriented Java programming interface for Web and Swing GUIs. The framework prevents from struggling with browser specific HTML, JavaScript and HTTP requests or from caring about the internals of Swing.
For Swing client/server applications the framework handels the client/server split by using the half-object pattern. Client/server communication including compression and security is covered by the framework also. Web applications are completely and transparentely AJAX enabled, while the use of this feature remains fully configurable. A Multi-Channel-Mode enables one server to serve Swing clients and Web clients at the same time. The framework also covers areas of data-binding, persistence, threading and synchronisation. The project comes with a WYSIWYG GUI-builder which is completely built on the WidgetServer framework technology. A new version of an eclipse-plugin will be released soon:

What is different?

  • WidgetServer handles various client technologies with a single API
  • A powerful, template based rendering engine offers full control over the generated HTML/CSS code, whenever needed
  • AJAX is integrated transparentely but can be switched off by configuration completely or for specific (e.g. mobile) browsers only
  • Most GUI event types are supported (Action, MouseMove, Click, KeyPressed, DoubleClick, Select, Scroll, Drag, Drop, ...)
  • A plugin-concept makes the WidgetServer component-set easy to extend
  • WidgetServer is mostly server-side processing. The JavaScript library has only about 1000 lines of code - it is fast and effective

When to use?

WidgetServer's effectiveness in building complex GUIs is a real benefit for rapid requirement capturing, prototyping and agile software development approaches. Whenever you have to develop complex WEB-GUIs for professional users like Call-Center agents for example, WidgetServer is worth to be taken into consideration.

License

The WidgetServer framework is released under the terms of the LGPL. All tools and examples like WidgetServer-HelloWorld are distributed under the terms of the CPL or at your choice under the terms of the LGPL. To enable our customers to get most benefit out of the technology package, we offer several professional services like:

  • Training and Coaching
  • Consulting on project initialization and system architecture
  • Automated testing
  • Individual software development on a fix price basis
Depending on your requirements we offer support separately or in combination with our consulting- and project-services. Fore more information about us and our service-portfolio please refer to: