Echo (framework)

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Echo is a web application framework that was created by the company NextApp. It originally started as a request-response web application framework that leveraged the Swing object model to improve the speed of application development. Through the use of the Swing model, Echo was able to employ concepts such as components and event-driven programming that removed much of the pain of web application development.

It is free software licensed under the terms of the Mozilla Public License (MPL).


In late 2005, NextApp formally announced the release of their new Ajax based web application platform, "Echo2". This framework built on the concepts of Echo (well known API, total web abstraction) but delivered the additional benefit of being an Ajax environment. NextApp believed that this approach brought the framework extremely close to the capabilities of rich clients. NextApp also claimed that this reincarnation of the Echo framework provided dramatic performance, capability, and user-experience enhancements made possible by its new Ajax-based rendering engine.


During 2007, development on a third generation of the framework, Echo3, began. The focus of this evolution was to move away from generating markup on the server side, and instead to implement rendering peers as native JavaScript objects, with an XML-based state synchronization protocol between client (web browser) and server. This was developed in tandem with a core JavaScript framework, providing the ability to define inheritance hierarchies in JavaScript in a way familiar to developers of object-oriented languages.


Echo is often compared to frameworks such as Google Web Toolkit (GWT) as both Echo and GWT (among others) offer a programming model that completely abstracts users from the web tier. However Echo differs substantially from GWT in the way it interacts with JavaScript. GWT essentially implements a subset of the Java API in JavaScript, and as such, Java code is compiled to JavaScript and fully executed on the client side. On the other hand, Echo has offered a dual-stack approach since version 3. Applications can be written in JavaScript (client-side) or Java (server-side) or in mixed forms.

Comparable frameworks include Vaadin, RAP, ZK, OpenLaszlo, ICEfaces, ThinWire, Apache Wicket, and jSeamless.

Associated projects[edit]

Echo2 has inspired various add-on projects including:

External links[edit]