Google Web Toolkit

November 17th, 2007 Arsen

GWT Google Web Toolkit (GWT) is a Java software development framework that makes writing AJAX applications like Google Maps and Gmail easy for developers who don’t speak browser quirks as a second language.

  • You write your front end in the Java programming language, and the GWT compiler converts your Java classes to browser-compliant JavaScript and HTML.
  • UI components are open-source, Java-to-JavaScript compiler is open-source too since december 2006.
  • Dynamic, reusable UI components
  • Really simple RPC
  • Browser history management
  • Real debugging
  • Interoperability and fine-grained control

Posted in Patterns - Java | No Comments »

Guise

November 17th, 2007 Arsen

Guise provides an elegant server-side component architecture that doesn’t require developers to write HTML or JavaScript (Demo).

  • A true application framework, written completely in Java.
  • Allows developers to think in terms of component and events instead of HTML generation and DOM programming.
  • Provides controls, modal dialogs, flyovers, and more.
  • XHTML compliant.
  • Flexible commercial license, with free full-featured development version available for immediate download. By Global Mentor Inc.

Posted in Patterns - Java | No Comments »

Direct Web Remoting

November 17th, 2007 Arsen

Direct Web Remoting is a framework for calling Java methods directly from Javascript code.

  • Like SAJAX, can pass calls from Javascript into Java methods and back out to Javascript callbacks.
  • Can be used with any web framework - Struts, Tapestry, etc.
  • Follows Spring-like KISS/POJO/orthogonality philosophy.
  • Being incorporated into next WebWork release.
  • Open-source license (Apache). By Joe Walker

Posted in Patterns - Java | No Comments »

Backbase AJAX for JSF

November 17th, 2007 Arsen

Backbase AJAX for JSF is a complete AJAX - JSF programming framework build on top of Apache MyFaces and Eclipse.

  • Pre-build AJAX-JSF components
  • Eclipse Plug-in
  • JSF-server extension compatible with major Java App Servers

Posted in Patterns - Java | No Comments »

Backbase AJAX for Struts

November 17th, 2007 Arsen

Backbase AJAX for Struts is a complete AJAX - Struts programming framework build on top of any Struts and Eclipse.

  • Pre-build AJAX-Struts components
  • Eclipse Plug-in
  • Struts-server extension compatible with major Java App Servers

Posted in Patterns - Java | No Comments »

Authenteo

November 17th, 2007 Arsen

Authenteo provides client centric programming model for RIA development

  • Built in WCM with browser-based WYSIWYG editing, version control, security
  • Client domain model approach for client centric programming model with persisted objects in JavaScript
  • Directly writing Ajax is not necessary as communication is dynamically transparently handled with persisted object access.
  • Utilizes powerful multi-generational inheritance for persisted objects
  • Support for continuations through Narrative JavaScript, greatly simplifies programming requests, animations, and sequenced user interactions

Posted in Patterns - Java | No Comments »

Ajax4jsf. AJAX for Java Server Faces Framework

November 17th, 2007 Arsen

Ajax4jsf is an open source framework that adds AJAX capability to existing JSF applications without using Javascript.

Ajax4jsf fully leverages the benefits of the JavaServer Faces framework including lifecycle, validation, and conversion facilities and management of static and dynamic resources. Using Ajax4jsf, rich components with built-in AJAX support and a highly customizable look-and-feel can easily be incorporated into JSF applications.

The framework is implemented using a component library that adds AJAX capability to your existing pages without needing to write any JavaScript code or needing to replace existing components with new AJAX widgets. Ajax4jsf enables page-wide AJAX support instead of the traditional component-wide support. This means you can define the event on the page that invokes an AJAX request and the areas of the page that should be synchronized with the JSF Component Tree after the AJAX request changes the data on the server according to the events fired on the client.

Posted in Patterns - Java | No Comments »

AjaxTags (a subcomponent of the Java Web Parts project)

November 17th, 2007 Arsen

Java Web Parts The AjaxTags component of the Java Web Parts project is a taglib that allows for very easy, purely declarative AJAX functions to be attached to any element on a page.

It is nice because it does not require you to change anything about your existing page, you can add AJAX features after the fact very easily. The taglib consists of two common tags, and two others that are less frequently used, which have one or two attributes apiece. Very simple! All you do is drop a tag directly after the element on the page you wish to AJAX-enable, configure an entry in an XML config file describing the AJAX event, and you’re done! AjaxTags comes with a number of request and response “handlers” which provide common AJAX functions (i.e., construct XML from a form and submit it, update a div with the servers’ response, execute returned populate a select, transform returned XML via XSLT, etc). It also has tremendous flexibility for you to create your own handlers to do other things, like transfrom the server’s response via XSLT using Sarissa (this was a contributed custom handler which is now standard in AjaxTags). AjaxTags does not provide pre-made AJAX widgets as other libraries do, but it does provide the foundation to very easily and quickly build these (see the cookbook example of building Google Suggests with AjaxTags). AjaxTags also provides timed AJAX events, so you can continually refresh an iFrame for instance. AjaxTags is, in short, an exceedingly simple, powerful and flexible way to introduce AJAX into your applications without having to write ANY code yourself!

Posted in Patterns - Java | No Comments »

AJAX JSP Tag Library

November 17th, 2007 Arsen

The AJAX JSP Tag Library is a set of JSP tags that simplify the use of Asynchronous JavaScript and XML (AJAX) technology in JavaServer Pages. This tag library eases development by not forcing J2EE developers to write the necessary JavaScript to implement an AJAX-capable web form.

  • Autocomplete: Retrieves a list of values that matches the string entered in a text form field as the user types.
  • Callout: Displays a callout or popup balloon, anchored to an HTML element with an onclick event.
  • HTML Content Replace: Builds the JavaScript required to hook a content area (e.g., DIV tag) to a link, image, or other HTML element’s onclick event.
  • Portlet: Portlet-style capability from a AJAX-enabled JSP tag.
  • Select/dropdown: Based on a selection within a dropdown field, a second select field will be populated.
  • Tab Panel: Enable an AJAX-based set of property pages.
  • Toggle: Uses images to create either a single on/off toggle or a sequential rating system.
  • Update Field: Updates one or more form field values based on response to text entered in another field.
  • Area and Anchor: Shows how to AJAX-enable any area of your page
  • Ajax DisplayTag: Shows how to AJAX-enable DisplayTag
  • Open-source license by multiple contributors.

Posted in Patterns - Java | No Comments »

AjaxAnywhere

November 17th, 2007 Arsen

AjaxAnywhere turns any set of existing JSP/JSF/Struts/Spring/etc.. components into AJAX-aware components without JavaScript coding. (Quick Start Demo).

  • Does not break existing server-side MVC architecture.
  • Less JavaScript to develop and to maintain. Absence of commonly accepted naming convention, formatting rules, patterns makes JavaScript code messier then Java/JSP. It is extremely difficult to debug and unit-test it in multi-browser environment. Get rid of all those complexities by using AjaxAnywhere.
  • Easy to integrate. AjaxAnywhere does not require changing the underlying application code.
  • Graceful degradation. Switch whenever you need between AJAX and traditional (refresh-all-page) behaviour of your web application. Your application can also support both behaviors.

Posted in Patterns - Java | No Comments »