Echo3 FAQ

General Questsions

Q: How do I start using and learning Echo?
A: Read the Developer's Guide.

Q: What is Ajax?
A: Ajax is a collection of technologies available in modern web browsers that collectively further the web's ability to be used as an application platform. The term "Ajax" is actually an acronym for "Asynchronous JavaScript and XML", and represents the combined use of XHTML, CSS, DOM Manipulation, XML/XSLT, JavaScript, and XMLHttpRequest. The term was coined in this article, "Ajax: A New Approach to Web Applications", and it seems to have stuck.

Q: Do I need to learn Ajax / JavaScript / XML / XHTML / DOM / CSS / etc. to use the server-side Java version of Echo?
A: If you are using the server-side Java version of Echo, then the short answer is "no." Echo provides an entirely Java-based API for application development. The only exception is in the case where the developer wishes to extend the framework by creating components that render custom XML/HTML/JavaScript code.

Q: Do I need to learn Ajax / JavaScript / XML / XHTML / DOM / CSS / etc. to use the client-side JavaScript version of Echo?
A: If you are using the client-side JavaScript version of Echo, then you will of course need to know JavaScript. Basic knowledge of AJAX and either XML or JSON will be beneficial if you need to communicate with server-side services. Advanced knowledge of HTML, DOM, and CSS are still not required, unless you are creating custom HTML rendered components.

What's New in 3.0

Q: What are the new features in 3.0?
A: The new features in 3.0 are detailed in the Echo3 Feature List

Q: Will Echo2 applications work in Echo3?
A: Echo2 applications will require modifications to work in Echo3. The application framework API is largely the same. At minimum, you will need to change the package name of any imported Echo classes and convert any XML stylesheets to a new format (an automated tool is available). Some applications will not require any further modification. The API for writing components that render custom HTML and JavaScript has changed, so any such components will need to be ported. For more information on converting Echo2 applications to Echo3, see the Migration Guide.

Software Requirements

Q: What are the server requirements to host a server-side Java Echo-based application?
A: A Java Servlet Container implementing the Servlet 2.3 Specification is required to host an server-side-Java Echo application. A 1.4 or later Java Virtual Machine is required on the server.

Q: What browser platforms are supported by Echo?
A: Echo3 targets two specific web browser platforms:

  • Substantially W3C DOM / CSS Level 2 Compliant Browsers Echo3 supports browsers that support the Level 2 DOM and CSS specifications and provide XMLHttpRequest support. Mozilla/Firefox falls into this category.
  • Microsoft Internet Explorer 6.x (and later) Browsers for Windows Internet Explorer 6 is specifically targeted due to its widespread use.
  • Licensing

    Q: How is Echo licensed?
    A: Echo is licensed under the terms of the open-source Mozilla Public License. The terms of the Mozilla Public License provide software developers with the ability to use the product royalty free to develop both open-source and closed-source (proprietary) applications. Developers may also modify the source code to the Echo framework itself, but in this case are required to submit their changes back to the community. If desired, a developer may choose to instead license the Echo under the GNU Lesser General Public License or the GNU General Public License. Use of the GNU licenses is entirely optional.

    Q: Can proprietary applications be created using the Echo framework?
    A: Yes, proprietary applications can be created using the Echo framework. Echo JAR files may be distributed with proprietary, closed-source applications. Echo is licensed under the Mozilla Public License which does not impose any licensing requirements on applications that dynamically link to it. If you have any concerns with regard to developing commercial software dependent upon libraries provided under the Mozilla Public License, please feel free to contact us.

    Q: Can proprietary components be created and sold for the Echo framework?
    A: Yes, proprietary components can be created and sold for the Echo framework. The Mozilla Public License does not impose any restrictions on the licensing of your product.


    Q: What free support options are available?
    A: Support for the Echo framework is freely available from the Echo development community. The best place to obtain free support is by joining the Echo Developer Forums and asking a question in the Help and Support forum.

    Q: Is commercial support available?
    A: Yes, NextApp provides commercial support for Echo. Please see the Support Page for details.

    Q: How do I report a bug?
    A: If you think you've found a bug in Echo, please report it at,


    Q: I encountered a server-side error in my application, what should I do?
    A: Look at your servlet container's log file to find the exception which has been thrown by the application, and begin debugging from there. Searching or posting at the developer forums can often yield useful information when debugging tough issues.

    Q: I encountered a JavaScript error while using an Echo application, what should I do?
    A: First, understand that when Echo encounters a server-side error, it will display a JavaScript alert to the client browser. This alert dialog is not actually a JavaScript error. If you encounter this alert dialog, see the FAQ section titled "I encountered a server-side error in my application, what should I do?"

    If the error you encountered is actually the result of flawed JavaScript code, please let us know by posting a bug to Please include the platform type, browser version, and the operating system type and version. The more information we have on the problem the more successful we'll likely be at solving it.