View Source
Homepage AJAX engine framework

The AJAX Engine

mathertel -> AJAXEngine

A AJAX Framework using the standard webservice protocols SOAP and WSDL.

Home Samples Documentation Sources Downloads License Impressum All
Home

The AJAX Engine

AJAX is a technology that enables web applications to call the webserver without leaving the actual page. It's possible to do this in the background without notice of the user. This avoids loading the same form or page including the html markup multiple times, reduces the network traffic and increases the user acceptance.

The AJAX Engine that you can find here is built upon the webservice standard protocols SOAP and WSDL for transferring the data between the browser client and the web server instead of using a new or proprietary protocol.

The key part of this engine is a small webservice client written in javascript and a state engine that controls the asynchronous communication. The benefit of that approach is that there is no need to invent new protocols and that the webservice framework on the server can be reused.

The server side of this AJAX Engine uses the ASP.NET framework, Version 2.0 and the C# programming language to implement the WebServices and a server side control library. Because WebServices are part of other standard frameworks it is easy to port the engine to other platforms and so there is a port of the core parts to the java platform available too.

This implementation has its focus on building an AJAX Engine and Web Controls upon standard WebServices (SOAP, WSDL) on the web server instead of using a new or proprietary protocol. The benefit for that is that there is no special coding necessary for most parts of the networking infrastructure and that many aspects like caching and security of the WebService implementation can be reused.

Many aspects on this technology and many details about the AJAX Engine can be found in the eBook that is available at http://www.mathertel.de/AJAXEngine/documentation/AJAXeBook.aspx.

Features of this platform:

  • Cross Browser compatible JavaScript framework.
  • Using standard WebServices protocols for asynchronous client-server communications: (SOAP, WSDL)
  • Multiple DataType and XML support.
  • Automatic generation of JavaScript proxies for WebServices.
  • Fast Response.
  • Synchronous and asynchronous method invocations.
  • Client and server side Response caching.
  • Client side AJAX Engine that makes asynchronous client side processing easy.
  • AJAX Actions, queuing actions, scheduling actions
  • Integration into the Microsoft ASP.NET framework.
  • ASP.NET Web Forms and WebServices compatible
  • Integration into the java axis framework.
  • Many AJAX enabled web controls are available
  • Supports the Internet Explorer and the Firefox/Mozilla browsers.

This is the website hosting the source files and examples for the AJAX engine and my blog about aspects of AJAX.

Documentation

The Book about the AJAX Engine

The complete documentation of the AJAX Engine is now available as a book available in PDF at documentation/AJAXeBook.aspx.

I will update it from time to time when new text on my Blog or samples on my website are written. Come back and check for new versions.

Architecture of the AJAX framework

Architecture of the AJAX framework using a Model View Controller pattern

Overview: overview.htm

Calling WebServices using a client side proxies written in JavaScript: javascriptproxy.htm

Compare the Aspects of AJAX Engine with other AJAX frameworks:AJAXComparison.aspx new

The AJAX Engine:AJAXEngine.htm

More documentation and latest additions for this side are available in my Blog.

See my blog at http://ajaxaspects.blogspot.com/.

Samples

Asynchronous Processing: First series of the samples showing how to handle asynchronous processing on the client and the server.

AJAX core and web service samples: These samples show how to use JavaScript, webservices, AJAX actions and all the features of the AJAX engine.

JavaScript Behavior Tutorial new: If you worry about too much JavaScript fragments in too many places you need a concept of reusing client side functionality on a component level. See how to implement JavaScript behaviors from the scratch.

AJAX web controls: These samples are using web controls and JavaScript behaviors to build up AJAX applications and to reduce the amount of code that has to be written in the pages.

LookUp: A autocomplete web control that suggest input values

TreeView: trees, tree view, hierachical data loading on demand

Field validation: validate field values on the server while filling out the form.

Huge Table: scroll or page through huge tables.

Bible Reader: A more complex AJAX application made of AJAX enabled web controls like cascading select boxes and text retrieval.

Bible Tree View: A AJAX based Tree View using an English Bible.

Page Connections: see how to link AJAX web controls together to reflect changed values.

AJAX enabled PopUp: see how additional information can be retrieved from the server and displayed in a html popup.

View the source code to see that only a few lines are needed to use AJAX enabled controls.

Visual Effects: Here you find a collection of visual effects that can be used as stand-alone effects and together with AJAX functionality.

AJAX Formsnew: Here you find the components and controls to build data centric web applications similar to classical form based web applications.

Sources

AjaxEngine is on sourceforge.net

You can now find a subversion repository with the current version of the AjaxEngine, including the samples on sourceforge at http://sourceforge.net/projects/ajaxengine/.

Feel free to use the great advantages of this community site like discussions and bug tracking.

The subversion url is: https://ajaxengine.svn.sourceforge.net/svnroot/ajaxengine.

Downloads

ASP.NET Version 24.02.2007

Ajax.zip (1.367 kByte)
This Zip-File contains the latest stable version of the ASP.NET 2.0 web project that builds this side. The complete AJAX Engine and all samples are included. Use this project when you want to start building your AJAX web application.

AJAXEngine.zip (159 kByte)
This Zip-File contains the core files of the AJAX engine and the AJAX controls. You can use this if you want to update your project with the updated core files.

Current version under development

Ajax_new.zip (~ 1.500 kByte) new
This Zip-File contains the current version of the ASP.NET 2.0 web project that builds this side.
The complete AJAX Engine and all samples and also unfinished samples and componente are included.
Use this download If you want to experiment with the Engine or if you want to have a look for the newest additions and features.

Java Version 03.02.2006

AJAXEngine_Java.zip (1,74 MByte)
This Zip-File contains a complete Java web project that uses a Java Port of this Engine. Some AJAX samples are included.

License

This work is licensed under a BSD style license.

The complete license agreement text is available at http://www.mathertel.de/License.aspx

(The license changed from a Creative Commons Attribution 2.0 Germany License to a BSD style license in January 2007.)

Impressum / Contact

If you like to add comments to my work I prefer that you post them on my blog and share your thoughts with everyone. I'll get a notice anyway :-)

For further contact:

Adress of the author

My Homepage: http://www.mathertel.de

My Blog: http://ajaxaspects.blogspot.com/


This page is part of the http://www.mathertel.de/AJAXEngine/ project. For updates and discussions see The AJAX Engine blog.