| By Vishwas Lele | Article Rating: |
|
| June 1, 2006 11:45 AM EDT | Reads: |
145,185 |
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities.
I have three goals in this article. First, I want to provide a high-level overview of AJAX-style applications. My second goal is to provide a detailed description of asynchronous callback features of ASP.NET 2.0. Finally, I want to provide an insight into upcoming enhancements of tools and frameworks for building AJAX-style applications.
AJAX-style Web applications exhibit the following characteristics:
- Asynchronous requests made to the Web server. The browser user interface is not blocked while waiting for a response from the Web server. The browser can continue to respond to user interaction while awaiting a server response.
- High dependence on browser-based logic written in JavaScript. Recent enhancements to and standardization of the W3C DOM provide support for dynamic client-side updates to UI.
- Exchange of nonpresentation XML-based data between the browser and the Web server. The XMLHttp object makes it possible to communicate with the Web server without the need to reload the page.
- The user experience is richer. For example, when a Google map user drags the map in one direction, an asynchronous request is made to the server in the background, to continue to fetch tiles beyond the edge of the screen. This way when the user drags the map further, the new image is readily available. This creates a perception of a speedier response.
- Since the state is not lost across XMLHttp-based calls to the server, AJAX applications can avoid rerendering the UI widgets each time.
- More logic residing in the browser reduces the number of roundtrips to the Web server, thereby improving the overall latency of the system.
Fortunately, the arrival of things such as Atlas, AJAX.NET, and the Google Maps API etc. is a sign of better support for building AJAX-style applications in the future. In the next section, we will look into how the support for building AJAX applications is evolving over time and what to expect from the newly announced toolkits such as Atlas.
Let's start with the XMLHttp object, which was introduced by Microsoft and later implemented on other platforms including Mozilla and Apple's Safari browser. XMLHttp enables asynchronous requests to the Web server, which allows Javascript- based logic on the client to call the Web server without the need to reload the page.
In other words, it is possible to have interaction with the Web server in the background without causing a page reload - a side effect of the exchange between the browser and the Web server.
Using the XMLHttp object is straightforward. For the sake of simplicity, let's just consider IE specific syntax. The syntax for XMLHttp implementations on other browsers is similar.
In the code snippet shown above, the first step is to instantiate the Microsoft.XMLHttp class. Next, we set the properties on the XMLHttp instance we just created, including the address of callback function that will get control when the XMLHttp request is complete. The callback function address is needed because we are making asynchronous calls to the server (an intent conveyed by setting the third parameter on the open method call to true). Inside the implementation for the callback function, we make additional checks to make sure that the request is complete.
request = new ActiveXObject("Microsoft.XMLHTTP");
if (request)
{
request.onreadystatechange = CallbackHandler;
request.open("GET", URL, true);
request.send();
}
function CallbackHandler()
{
if ((request.readyState == 4) && (request.status == 200)
{
string response = request.responseXML;
// Update the relevant sections of the UI
}
}
Published June 1, 2006 Reads 145,185
Copyright © 2006 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Vishwas Lele
Vishwas Lele is a principal architect at Applied Information Sciences (www.appliedis.com), a system and software engineering company specializing in .NET-based solutions. Vishwas also serves as the MSDN Regional Director for the Washington, DC area.
![]() |
Shabdar 03/25/08 11:57:26 AM EDT | |||
If you are looking for Google Maps control for ASP.Net visit following link, This is a free open source control. |
||||
![]() |
Steve 06/02/06 11:11:07 AM EDT | |||
The title of the article is misleading. I see no mention of Google Maps in the content of the article in regards to ASP.NET. I applaud the editors for coming up with such innovatively misleading bait to entice them to read the entire article, and all the embedded ads. Bravo! |
||||
![]() |
AJAX News Desk 06/01/06 11:59:33 AM EDT | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
SYS-CON India News Desk 05/31/06 12:50:59 PM EDT | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
SYS-CON Italy News Desk 05/31/06 12:20:35 PM EDT | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
AJAX News Desk 05/31/06 11:49:13 AM EDT | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
not amused 02/23/06 03:57:06 AM EST | |||
unreadable text thanks to floating add that is impossible to close |
||||
![]() |
Sanjay Gupta 02/21/06 04:41:58 PM EST | |||
Great explaination of the article. Sanjay |
||||
![]() |
SYS-CON Italy News Desk 02/19/06 05:53:45 PM EST | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
news 12/23/05 04:31:18 PM EST | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
SYS-CON UK News Desk 12/23/05 02:32:15 PM EST | |||
Google Maps! Ajax-Style Web Development Using ASP.NET |
||||
![]() |
AJAX News Desk 12/23/05 11:41:04 AM EST | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
AJAX News Desk 12/23/05 10:42:12 AM EST | |||
In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
Mike 11/14/05 02:21:56 PM EST | |||
I am interested in Geo fencing...would any of the above technologies enable the development of a Google map which has geo fencing capabilities? Thanks for any input, Mike |
||||
![]() |
News Desk 10/20/05 11:17:56 PM EDT | |||
Google Maps! AJAX-Style Web Development Using ASP.NET. In the past few months, the design pattern of combining Asynchronous JavaScript and XML (AJAX) to develop highly interactive Web applications has been growing in popularity. High-profile Web applications such as Google Maps and A9 are currently leveraging the combination of these technologies to produce rich client-side user experiences. The individual technologies that compose AJAX are not recent developments; they have been around for some time and have been continuously updated and improved. However, it is the recent confluence of these technologies that is leading to interesting possibilities. |
||||
![]() |
.NET News Desk 09/08/05 12:58:07 PM EDT | |||
AJAX-Style Web Development Using ASP.NET |
||||
![]() |
Mark Petersen 09/07/05 10:22:23 AM EDT | |||
The AJAX.NET URL is not correct. I believe what you are looking for is: This library works in ASP.NET 1.1 as well. |
||||
- The Case for Single-Purpose Services
- Oracle-Sun: IBM Reportedly Behind Delay
- Current Trends in the Data Management Market
- Cloud BI & Amazon VPC
- IBM Puts Systems Chief on Leave of Absence
- GITEX TECHNOLOGY WEEK 2009 Exhibitor Profiles
- The Curious Case of Build Release Management eBook
- Cloud-Oriented Switch Start-up Valued at $230M
- Tips for Efficient PaaS Application Design
- Reporting Solutions Using Crystal Reports for Eclipse
- Java Kicks Ruby on Rails in the Butt
- Interviewing Java Developers With Tears in My Eyes
- The Case for Single-Purpose Services
- Oracle-Sun: IBM Reportedly Behind Delay
- Open Source Selenium Web Application Testing System
- Configuring the PHP Version of Eclipse 3.5 RC4
- Current Trends in the Data Management Market
- What Could You Do with Your Code in 20 Lines or Less?
- JSR Watch: Here’s to Progress
- Cloud BI & Amazon VPC
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- Creating Web Applications with the Eclipse Web Tools Project
- Eclipse Special: Remote Debugging Tomcat & JBoss Apps with Eclipse
- The Next Programming Models, RIAs and Composite Applications
- Where Are RIA Technologies Headed in 2008?
- How to Bring Eclipse 3.1, J2SE 5.0, and Tomcat 5.0 Together
- SYS-CON Webcast: Eclipse IDE for Students, Useful Eclipse Tips & Tricks
- Eclipse: The Story of Web Tools Platform 0.7
- "Eclipse 3.0 is a Great Leap Forward," Says JDJ's Dudney




































