AJAX and OpenPro's new Create a Screen
Hardware independent and software independent using the latest technology from OpenPro.com
OpenPro is the leader in web-based ERP software using open source LAMP technology.
AJAX is not new. These techniques have been available to developers targeting
Internet Explorer on the Windows platform for many years. Until recently, the
technology was known as web remoting or remote scripting. Web developers have
also used a combination of plug-ins, Java applets, and hidden frames to emulate
this interactive model for some time. What has changed recently is the inclusion
of support for the
XMLHttpRequest object. Although this object is not
technology and CSS support among current generation browsers, such as Mozilla
as Google apps, Dojo, Prototype,
and the Yahoo User
Interface Library, have emerged to fill in where the browsers are not as
manageable and to provide a standardized programming model. Dojo, for example,
is addressing accessibility, internationalization, and advanced graphics across
browsers -- all of which had been thorns in the side of earlier adopters of
AJAX. More updates are sure to occur as the need arises.
OpenPro has a unique Create a screen process, where you specify what kind of screen you want to generate, specify the fields to create that screen, and it appears on the screen automatically.
Some uses for AJAX interactions are the following:
- Real-time form data validation: Form data, such as user IDs, serial numbers, postal codes, or even special coupon codes, that require server-side validation can be validated in a form before the user submits a form. See Realtime Form Validation for details.
- Autocompletion: A specific portion of form data, such as an email address, name, or city name may be autocompleted as the user types.
- Load on demand: Based on a client event, an HTML page can fetch more data in the background, allowing the browser to load pages more quickly.
- Sophisticated user interface controls and effects: Controls such as trees, menus, data tables, rich text editors, calendars, and progress bars allow for better user interaction and interaction with HTML pages, generally without requiring the user to reload the page.
- Refreshing data and server push: HTML pages may poll data from a server for up-to-date data such as scores, stock quotes, weather, or application-specific data. A client may use AJAX techniques to get a set of current data without reloading a full page. Polling is not the most effecient means of ensuring that data on a page is the most current. Emerging techniques, such as Comet, are being developed to provide true server-side push over HTTP by keeping a persistent connection between the client and server. See this blog entry on Comet using Grizzly for more on the development of server push with Java technology.
- Partial submit: An HTML page can submit form data as needed without requiring a full page refresh.
- Mashups: An HTML page can obtain data using a server-side proxy or by including an external script to mix external data with your application's or your service's data. For example, you can mix content or data from a third-party application, such as Google Maps, with your own application.
- Page as an application: AJAX techniques can be made to create single-page applications that look and feel much like a desktop application. See the article on the use of AJAX and portlets for more on how you can use portlet applications today.
Though not all-inclusive, this list shows that AJAX interactions allow web applications to do much more than they have done in the past.
Now that we have discussed what AJAX is and what some higher-level issues are, let's put all the pieces together and look at an AJAX-enabled Java application.
Let's consider an example. A web application contains a static HTML page, or
an HTML page generated in JSP
technology that contains an HTML form that requires server-side logic to validate
form data without refreshing the page. A server-side web component (servlet)
ValidateServlet will provide the validation logic. Figure 1
describes the details of the AJAX interaction that will provide the validation
OpenPro Global Partners Includes:
OpenPro, Incorporated ©
10061 Talbert Avenue #200
Fountain Valley, California 92708 USA
Phone: (714) 378-4600 Fax: (714) 964-1491
E-Mail us at email@example.com for more information.