A Round up on AJAX, JSF, Web Services & SOA
Email It!
These four technologies are the four pillars of present application development in any business line. Applications in present business scenario needs to be more dynaimic, development has to be efficient and the products must be customizable. This article is an high level round up and some examples on applications based on these.
AJAX: This has been extensively covered in ma previous article on Ajax Messengers. Ajax as we all know is Asynchronous Java Script and XML, and works dynamically in content processing and display. Ajax makes web applications behave as if they are desktop applciations.Without reloading any page, they quickly
display an endless amount of information to your browser. Such technologies would be really useful in applications where n number of interfaces are involved. For example and Online Application that pulls in data from various sources (Database on a Unix Server, Data on Mainframes, Data from SAS database on a windows server), the non reloading of data would definitely save data traffic and thus improves the efficiency of the application in system level. A data retrieval which might take 20 secs to put on the data on the page can be done in 3-5 seconds thru Ajax based applets. Ajax, or Asynchronous JavaScript + XML, is a combination of techniques (XHTML (or HTML), CSS, Document Object Model, JavaScript, and XMLHttpRequest) that involves dynamically placing an engine between the user and the server. Ajax applications transfer only XML-encoded data through the engine, rather than entire web pages.
The idea of AJAX is pretty similar to good old Java and Microsoft applciations interacting directly with data resources on Z/OS Mainframes. The data then used to be passed as a stream of string (XML encoding in present scenario), through interfaces like MQ or LU2.6 and gets a return code based on the data feed.
Ajax supports something called thin client infrastructure, where the Java Application will just be passing on data to the server and business logics would exist on the server. (I am researching on how would AJAX based applications could interact with different servers, especially Mainframes interms of response time and efficiency compared current existing systems).
Diagram from Cemron
JSF : JSF aka Java Server Faces is the heart of UI development. Though I havent worked on this (Kethan can you throw some light, if I go wrong in my understanding somehwere), my understanding is that JSF is a
standardized specification for building User Interfaces (UI) for server-side applications. Before JavaServer Faces, developers who built web applications often relied on building HTML user interface components with Servlets or JavaServer Pages (JSP pages). This was mainly because HTML user interface components were the lowest common denominator that web browsers support.
The Framework is for building web based user interfaces in java. Similar to Swing it provides standard set of widgets, framework for creating custom widgets, way to process client events.Developers of various skill levels can quickly build web applications by assembling reusable UI components in a page; connecting these components to an application data source; and wiring client-generated events to server-side event handlers.
Diagram from ITArchitect
Web Services & SOA: This is the buzz word in application development and core of Application level Open sourcing. Webservice works on n-tier architecture where one web application can evoke service from another webservice. The AJAX based messengers can be described a web service, where e-messenger evokes the service of Yahoo, AOL, MSN and Gtalk. Some years ago, the n-tier application architecture would have fatal due to bandwidth and expense. With the current internet scenario, the Web Service architecture is sure to hit bulls eye.Access consists of service-agnostic request handling (a listener) and a facade that exposes the operations supported by the business logic. The logic itself is implemented by a traditional middleware platform.
Service Oriented architecture is a collection of services interacting with each other. Though the architecture is pretty old, with even mainframe architecture working on this. For example Vision Plus products developed by Paysys , is a service oriented architecture in itself. But 20 years ago, they were not real time and were operated in Batch Mode. Present Pay Sys applciations work on SOA in real time.
The basic advantage of SOA is that one can develop applications independent of a platform and the application can plugged in into any system. When new applications can be assembled out of a collection of existing,reusable services, the best value for effort can be realized (that is, the lowest cost and fastest time to results and best ROI).
Now one would think whats the difference between SOA and Web Services? SOA is an architectural concept. Web Services is a realization of SOA, that leverages XML and common Internet protocols (such as HTTP) to deploy (typically) coarse-grained, discoverable services.
Diagram taken from IBM.
From the Diagram, one can see that each and every component is a web service and they interact with each other for a common service. This concept of using and resuing and independent development and deployment is SOA.
Lets see how these technolgies gonna work out.
RSS
Email

































Leave a Comment and Follow the replies through Post Comment Feed