Welcome!

Machine Learning Authors: Yeshim Deniz, Elizabeth White, Pat Romanski, Liz McMillan, Zakia Bouachraoui

Related Topics: Machine Learning , IBM Cloud

Machine Learning : Article

AJAX Requests – Data or Markup?

I just got back from the Real-World AJAX seminar in NYC on Monday

AJAX Requests – Data or Markup?

I just got back from the Real World AJAX seminar in NYC on Monday.  Pretty good event with lots of good stories. 

One issue that caught my attention was the issue of how the back-end returned the data to AJAX applications.  Most of the speakers preferred data, except for David Hansson from Ruby on Rails seemed to favor markup as the return type (at least that is what I understood him to say). 

This debate is pretty interesting.  From an Enterprise Java standpoint, the decision I believe has implications to the usage of the JSF, Struts, and Portals (in a JSR 168 sense).  Look at the picture below:




As I look at this, and think about non-functional concerns (clustering, security, etc...), the middleware can become quite complex.  JSF and Struts applications usually put a beating on Http Session, Portals even more so.  We now have duplication in MVC, both on the server and the browser.

I believe, from an enterprise standpoint, Ajax applications are better suited for exchanging data with the middle tier.  This makes the middle tier much more stateless, and therefore much more scalable.




The browser does become a bit more complex.  (Although, in the prior picture, the browser would still have a considerable and almost equal amount of work to do).  the additional work is managaing some state (the same as a well designed Http Session App with small foot print) and translating the data from some XML format to JavaScript.  In many cases this work has to be done somewhere in what is considered a web tier, because the business layer will not serve up mark-up.

If the UI workflow becomes more complex, then one should look to BPEL type engines with Human tasks and not complicate the issue with too much custom middleware.

Of course the initial hit to the server would have to go through some type of MVC middleware.  So the Struts, JSF, and Portals of the world will still have to serve up the inital pages, but from then on.

Eventually, I wonder if the initial hit could even be rendered by the browser with the server serving up some full XML document that the broswer knows how to translate to a full page.  There is much CPU out there in client land that we can take advantage of.  Although, the danger of the second coming of Fat clients has to be dealt with, we have to make sure there is no business logic out there or else security becomes a big concern. 

The browser should.

  • Invoke services on the server.
  • Move data from structures to Widgets.
  • Collect input.
  • Store minor state (multi-page wizard updates, some session id, etc...)
  • Render Widgets.
Anything more than this, then we are in fat land.  So now that I am convinced that data is a preferred route from a strategic stand point, the next debate is the wire format of the data.  Right now, I have seen 4 different approaches I have seen (custom XML, SOAP, REST, and JSON).  I wonder how the ESB of the worlds can help make a smarter controller.  I will save this discussion for another blog.


More Stories By Roland Barcia

Roland Barcia is a consulting IT specialist for IBM Software Services for WebSphere in the New York/New Jersey Metro area. He is the author of one of the most popular article series on the developerWorks WebSphere site, www-106.ibm.com/developerworks/websphere/techjournal/0401_barcia/barcia.html, and is also a coauthor of IBM WebSphere: Deployment and Advanced Configuration. You can find more information about him at http://web.njit.edu/~rb54

Comments (2)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


CloudEXPO Stories
OpsRamp is an enterprise IT operation platform provided by US-based OpsRamp, Inc. It provides SaaS services through support for increasingly complex cloud and hybrid computing environments from system operation to service management. The OpsRamp platform is a SaaS-based, multi-tenant solution that enables enterprise IT organizations and cloud service providers like JBS the flexibility and control they need to manage and monitor today's hybrid, multi-cloud infrastructure, applications, and workloads, including Microsoft Azure. We are excited to partner with JBS and look forward to a long and successful relationship.
The Master of Science in Artificial Intelligence (MSAI) provides a comprehensive framework of theory and practice in the emerging field of AI. The program delivers the foundational knowledge needed to explore both key contextual areas and complex technical applications of AI systems. Curriculum incorporates elements of data science, robotics, and machine learning-enabling you to pursue a holistic and interdisciplinary course of study while preparing for a position in AI research, operations, software or hardware development, or doctoral degree in a sector poised for explosive growth.
CloudEXPO has been the M&A capital for Cloud companies for more than a decade with memorable acquisition news stories which came out of CloudEXPO expo floor. DevOpsSUMMIT New York faculty member Greg Bledsoe shared his views on IBM's Red Hat acquisition live from NASDAQ floor. Acquisition news was announced during CloudEXPO New York which took place November 12-13, 2019 in New York City.
Codete accelerates their clients growth through technological expertise and experience. Codite team works with organizations to meet the challenges that digitalization presents. Their clients include digital start-ups as well as established enterprises in the IT industry. To stay competitive in a highly innovative IT industry, strong R&D departments and bold spin-off initiatives is a must. Codete Data Science and Software Architects teams help corporate clients to stay up to date with the modern business digitalization solutions. Achieve up to 50% early-stage technological process development cost cutdown with science and R&D-driven investment strategy with Codete's support.
Tapping into blockchain revolution early enough translates into a substantial business competitiveness advantage. Codete comprehensively develops custom, blockchain-based business solutions, founded on the most advanced cryptographic innovations, and striking a balance point between complexity of the technologies used in quickly-changing stack building, business impact, and cost-effectiveness. Codete researches and provides business consultancy in the field of single most thrilling innovative technology today, allowing brand new ways of business process digitalization and optimization. Our team comprises of top-class blockchain experts, experienced in working with fast-changing tech stack, and with academic-level expertise in applied-mathematical foundations of blockchain.