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 »

Ajax Framework - WDDXAJAX

November 17th, 2007 Arsen

WDDXAJAX wddxAjax is a ColdFusion custom tag to enable AJAX on *.cfm template.

  • Call a remote method of a ColdFusion component without reloading the page
  • Transparently use any kind of data type as arguments and result of methods (string, number, array, struct and query) with WDDX protocol
  • Easy local debug of remote methods

Posted in Patterns - Coldfusion | No Comments »

JSMX

November 17th, 2007 Arsen

JSMX This is a very simple AJAX implementation for ColdFusion Developers (or any language that can easily build JavaScript Strings), This API does not return XML but String Representations of JavaScript Expressions.

  • Using the CFWDDX tag, or the toScript() function, within ColdFusion makes converting your ColdFusion Objects to JavaScript a SNAP!
  • Smaller Packet Sizes over the wire (JavaScript Vs. XML).
  • Reduced latency due to less parsing of the responses.
  • Parameters can be sent to the server in multiple formats including, strings, objects, and entire forms without having to build extra logic to handle each type.
  • API has no Server Side components which makes it more portable (planned).
  • Extremely simple syntax shortens the learning curve and speeds up development.
params = document.myForm;
http( "POST" , "remote.cfc?method=dosomething" , my_callback , params );
  • Open-source (Creative Commons Attribution-ShareAlike License). By Todd Kingham.

Posted in Patterns - Coldfusion | No Comments »

AjaxCFC

November 17th, 2007 Arsen

AjaxCFC is a ColdFusion framework meant to speed up ajax application development and deployment by providing developers seamless integration between JavaScript and ColdFusion, and providing built-in functions, such as security and debugging, to quickly adapt to any type of environment and helping to overcome cross-browser compatibility problems.

  • ColdFusion components following the best practices of object oriented programming and design patterns. Programming with ajaxCFC involves extending components and creating your own ajax façades.
  • Intergration with Model-Glue and MachII, two of the most popular MVC frameworks, widely used by the ColdFusion community.
  • Works with ColdFusion MX 6.0, 6,1, 7.0, Scorpio, and BlueDragon (all flavors except BD.NET, which currently has compatibility issues).
  • Automatically handles complex object transmitted from the client to the server and vice versa.
  • Server returns pure JavaScript code to the callback handler (instead of XML or JSON) to vastly improve performance.
  • Optional use of XML Sockets to push data from the server.
  • On-the-works: Built-in base64 and/or blowfish encryption.
  • Hosted now by Adobe’s RIAForge
  • Licensed under the Apache License Version 2.0, by Rob Gonda.

Posted in Patterns - Coldfusion | No Comments »

zumiPage: Easy AJAX for ASP.NET

November 17th, 2007 Arsen

With zumiPage postbacks to the server are automatically captured on the client-side, and sent via an XmlHttp mechanism.

  • “zumiPage requires no code changes to existing projects so you can write code for ASP.NET as you always do, using the standard web-controls and methodology, and zumiPage will take care of the rest. Your web application will run smooth, fast and be more interactive.”
  • Works with ASP.NET 2.0 & 1.1
  • Fully compatible with Internet Explorer and Mozilla Firefox.
  • Save up to 90% of the traffic.
  • Easy to integrate with existing projects.
  • Does not require any usage of JavaScripts.
  • Fast, invisible XmlHttp postbacks.
  • Full control over returned controls on each postback.
  • Wait behaviors (for server loading times).
  • Commercial license by Amir Leshem.

Posted in Patterns - .NET | No Comments »

WebORB for .NET

November 17th, 2007 Arsen

WebORB for .NET is a platform for developing AJAX and Flash-based rich client application and connecting them with .NET objects and XML Web Services. (Online examples)

  • WebORB includes a client-side library called Rich Client System. The Rich Client System provides a simple one-line api to bind to and invoke any method on any .NET object or XML Web Service.
  • Supports synchronous and asynchronous method invocations
  • Does not require any modifications on the server-side code, no need for custom method attributes, special signatures or argument types. Does not require design-time stub generation.
  • Synchronous invocations return data from the same invocation (no callback needed). Asynchronous invocations rely on a callback.
  • Any server side method can be invoked synchronously or asynchronously.
  • Client application can request special activation modes for the server objects. As a result objects can easily become stateful without any special programming
  • Provides a special API for handling database query results - server code can return DataSets or DataTables and the client presents it as a special RecordSet JavaScript object. The object provides a way to retrieve column names as well as row data
  • Support data paging. Client applications can retrieve data in pages thus streamlining user experience.
  • Supports all server-side argument types as well as return values - primitives, strings, complex types, arrays, native .net collections, remote references
  • Dual license (Standard edition is free, Professional is commercial). By Midnight Coders.

Posted in Patterns - .NET | No Comments »

Visual WebGUI (The .NET answer to Google’s GWT)

November 17th, 2007 Arsen

With Visual WebGUI you get an open source AJAX framework that extends WinForms over ASP.NET.

  • Works with ASP.NET 2.0 & 1.1
  • Full WinFomrs like design time support
  • Is an extension to ASP.NET
  • Fully compatible with Internet Explorer & Firefox.
  • Save up to 90% of the traffic.
  • Provides almost all of WinForms controls and can be extendable.
  • Does not require any usage of JavaScripts,HTML or any other web language (Full WinForms abstraction).
  • Automatic optimizations of incremental updating and server postbacks.
  • Automatic client side caching to reduce round trips.
  • Leverages a unique “drawing” mechanism to enable getting more out of the same browser (what you do no see does not exist).
  • Wait behaviors (for server loading times).
  • Offline support to enable deployment as a smart client.
  • Available as open source version.

Posted in Patterns - .NET | No Comments »

MonoRail

November 17th, 2007 Arsen

MonoRail is a platform for developing C# web applications using templates instead of the webform based approach.

  • Functionally similar to Ruby on Rails.
  • Generates most/all of the Javascript for widgets and animation in the browser.
  • Provides Helpers that work with the Prototype javascript library.
  • Functions on the .Net and Mono Platforms on both Windows and Linux.
  • Open-source license by multiple developers.

Posted in Patterns - .NET | No Comments »