Service Orientation and Service-Based AJAX Applications

Service orientation is an architectural approach that defines an application solely by its service interfaces. This approach also describes an architectural commitment to provide message-based applications that are loosely coupled, well defined, and abstracted from implementation details. The example of a service-orientated application that I describe in this chapter is built to reflect the following tenets of service-oriented software:

  • The boundaries between applications are explicit

  • Services are developed and deployed autonomously

  • Services expose well-defined messages

For an AJAX application, following these tenets means that the service won’t be tightly joined to a JavaScript client or to the service’s use in the local Web application. The services are available to any remote application as well as to the local AJAX application.

More Information

More Information

For in-depth information about service-oriented architecture (SOA) and service orientation, I recommend reading "The Four Tenets of Service Orientation," at http://www.bpminstitute.org/articles/article/article/the-four-tenets-of-service-orientation.html, and Wikipedia’s SOA reference at http://en.wikipedia.org/wiki/Service-orientation.

Service orientation is the principle that enables a service-based AJAX application. It lets an AJAX developer deliver multiple components based on common services and data schemas. Service orientation and schema-based programming also simplify the development of controls and client-side rendering, enabling developers to create common controls and common rendering techniques for standardized data schemas. As an example, when you write XSLT for rendering logic, you base it on a schema and you can reuse the XSLT in multiple contexts.

Our service-based AJAX application will sit on top of a service-oriented application architecture. Because AJAX integration is loosely coupled through run-time behaviors, you don’t need to write much AJAX support into the service code. The AJAX application is developed on top of the service interface, which has AJAX-enabling behaviors added to it through configuration. Following this strategy, you can add remote client applications to the same service and reuse service endpoints for multiple AJAX components. Ideally you won’t have an AJAX-based service application but a service-based AJAX application instead.

More Information

More Information

For a guide comparing ASP.NET 2.0 ASMX Web services to WCF Web services, see the MSDN topic "Comparing ASP.NET Web Services to WCF Based on Development," at http://msdn2.microsoft.com/en-us/library/aa738737.aspx.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset