Echo is a
web application framework created by the company NextApp. The latest iteration, Echo3, allows writing applications in either server-side
Java or client-side
JavaScript. Server-side applications do not require developer knowledge of HTML, HTTP, or JavaScript. Client-side JavaScript-based applications do not require a server, but can communicate with one via
AJAX.
It is
free software licensed under the terms of the
Mozilla Public License (MPL).
Echo2
Echo originally started as a
request-response web application framework that leveraged the
Swing
Swing or swinging may refer to:
Apparatus
* Swing (seat), a hanging seat that swings back and forth
* Pendulum, an object that swings
* Russian swing, a swing-like circus apparatus
* Sex swing, a type of harness for sexual intercourse
* Swing rid ...
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
A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection.
History
In earlier computing models like client-serve ...
.
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
A performance is an act of staging or presenting a play, concert, or other form of entertainment. It is also defined as the action or process of carrying out or accomplishing an action, task, or function.
Management science
In the work place ...
, capability, and
user-experience enhancements made possible by its new Ajax-based
rendering engine.
Echo3
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.
Competitors
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
ICEfaces is an open-source Software development kit that extends JavaServer Faces (JSF) by employing Ajax. It is used to construct rich Internet applications (RIA) using the Java programming language. With ICEfaces, the coding for interaction ...
, ThinWire,
Apache Wicket, and
jSeamless.
Associated projects
Echo2 has inspired various add-on projects including:
* EchoPoint: "Next Generation": The most well known 3rd party component library for Echo2
* Hibernate-Spring-Echo: An effort to provide an out of the box application framework that includes Echo2
* Google maps for Echo2
* Google maps v3 for Echo2
* Gantt Charting for Echo2
* Echo2Faces: An effort to provide XML markup for Echo2 UI layouts
* jZeno: A full-stack application framework that uses a highly optimized version of the original Echo framework as rendering engine.
* Aejaks: A
Jacl layer on top of Echo2 to easily create rich web applications.
See also
*
List of rich web application frameworks
*
Comparison of JavaScript frameworks
*
List of Ajax frameworks
This is a list of notable Ajax frameworks, used for creating web applications with a dynamic link between the client and the server. Some of the frameworks are JavaScript compilers, for generating JavaScript and Ajax that runs in the web browser cl ...
*
References
External links
*
{{Widget toolkits
Java (programming language) libraries
Web frameworks
Java enterprise platform
Ajax (programming)
Rich web application frameworks
Software using the Mozilla license
JavaScript web frameworks