Echo is an open-source framework for developing rich web applications. From the developer's perspective, Echo behaves as a user interface toolkit--like Swing or Eclipse SWT. AJAX technology is employed to deliver a user experience to web clients that approaches that of desktop-based applications. Echo applications can be created entirely in server-side Java code using a component-oriented and event-driven API (applies to Echo2 and Echo3) or as client-side applications written in JavaScript (applies to Echo3 only).
To ensure Echo3 applications are accessible by a broad array of users and devices, the platform has been designed to work well regardless of a user's chosen font size. Some users or environments may need text to be rendered in larger-than-normal sizes, and Echo works to avoid burdening the developer with the issues that can arise from such arbitrary sized fonts. The most notable features include the capability to specify font-relative dimensions for components and automatically position and scale container components based on the size of their rendered content. JavaScript/HTML component developers can also take advantage of cross browser content-measuring APIs and the multiple-phase rendering architecture of Echo3.
New and improved releases of Echo3 and the Extras component are available now. The big news in this release is the implementation of automatic WindowPane sizing: the component can now in many cases automatically determine its height based on the size of its content. The demonstration app has been updated to make extensive use of this feature. WindowPanes additionally now can be positioned from the bottom or right side of a region, and maximize and minimize events are supported for server-side applications. The beta7 version of the Extras library adds only minor bugfixes relative to beta6.
The default Java XML Parser configuration is not secure against untrusted content and allows for XML external entity attacks. This update modifies Echo to include custom parser configuration options to disallow all external XML entities. Much thanks to the SEC Consult Vulnerability Lab for reporting this issue. Updating to the latest version is strongly recommended.
Beta5 is out and available at the usual location.
Echo3 now has support for setting focus traversal order and offers the capability to configure various high-level behaviors from the server (such as wait indicators and failure-mode behaviors). Extras beta5 adds a Drag-and-Drop component, along with improvements to TabPane, AccordionPane, and RichTextArea components. The Echo3Extras client-side JavaScript code was also heavily reviewed and is now near completely documented.
The 2.1.0 releases of Echo2, Echo2 Extras, and EchoStudio are now available. 2.1.0 versions of the Echo2 file transfer library and chart library have also been released. These releases only contain very minor updates from the RC5 version.
The fourth beta releases of Echo3 and Echo3 Extras are now available. The focus of these releases has been toward code quality improvements, documentation, cleanup, and eliminating roadmap issues targeting the RC1 release in the bug tracker.
Noteworthy improvements include...
I just installed IE8RC1 and tried it out against the Echo framework. The first test of course was to point it at our main demo application (http://demo.nextapp.com). It downloaded the application's scripts and rendered the initial screen reasonably quickly. But then I tried dragging the "Welcome" window of the demo app, and it seemed a bit slow. Opening the task manager, I also noticed that *any* mouse movement would peg the CPU at 100%, even over elements that had no mouse listeners registered.
Then it got worse.
New beta releases of Echo3 and the Extras component library are now available. Major changes in this release include framework-wide support for small/large DPI fonts, support for right-to-left languages, and significant updates to components such as CalendarSelect, TabPane, and WindowPane. CalendarSelect has a much improved appearance relative to the previous version, and features animation when changing the displayed month or year. TabPanes now scroll when too many tabs are present to fit on the screen at once. WindowPanes and SplitPanes feature rollover effects.
Additionally, an issue-tracking-based project roadmap is now available at http://bugs.nextapp.com/mantis/roadmap_page.php .
I've made some updates to the Echo3 demo to show off the post-beta2 changes in the framework. The demo is available at the usual location, http://demo.nextapp.com/echo3csjs. New features include an entirely new rendering for the CalendarSelect, which now displays animated effects when selecting dates. WindowPanes and SplitPanes now offer rollover effects. The DropDownMenu renderer was given some aesthetic improvements as well. There's more to come before beta3 (notably in that TabPane will receive some significant updates), but things are progressing smoothly and beta3 is not too much farther out.