UIDL is a scriptable software tool that uses JavaScript to build complex user interfaces. This tool aims to simplify the interface creation process by providing a user-friendly language interface.
Unlike AJAX, UIDL's implementation is much cleaner thanks to the ability to natively instantiate complex UI components within the browser and the ability to transparently present server-based objects via their JavaScript proxies. The project was motivated by the realization that the browser model was developed for document presentation, and as a result, web application developers often resort to hacks, requiring knowledge of many different technologies, leading to less user-friendly applications.
However, the browser model is much superior in making it easy to deploy application upgrades in a central location without worrying about upgrading clients. UIDL aims to extend the browser model by supporting a rich library of UI components and transparently updates client data from server-side objects asynchronously.
In the latest release of UIDL, JSON-RPC remoting has been simplified by enhancing client functionality. Remote interfaces are no longer required as proxy objects are automatically constructed from exposed meta-data. Due to the simplified native JSON-RPC support, support for Spring RPC and JavaScript based JSON-RPC is now deprecated. Build files have also been reorganized to avoid packaging common libraries twice, reducing overall distribution size.
Overall, UIDL offers a promising tool for developers looking to create complex user interfaces in a cleaner implementation and better maintain their code while still enjoying the benefits of easy deployment through the browser model.
Version 1.3: N/A