Ajax / Rich Internet Applications ICW Lecture 21 Errol Thompson.

Slides:



Advertisements
Similar presentations
Chapter 17: WEB COMPONENTS
Advertisements

1 CGICGI Common Gateway Interface Server-side Programming Lecture.
DT228/3 Web Development WWW and Client server model.
9. AJAX & RIA. 2 Motto: O! call back yesterday, bid time return. — William Shakespeare.
The Application Layer Chapter 7. Electronic Mail Architecture and Services The User Agent Message Formats Message Transfer Final Delivery.
Web Servers How do our requests for resources on the Internet get handled? Can they be located anywhere? Global?
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
1 The World Wide Web Architectural Overview Static Web Documents Dynamic Web Documents HTTP – The HyperText Transfer Protocol Performance Enhancements.
Definitions, Definitions, Definitions Lead to Understanding.
Advanced Web 2012 Lecture 2 Sean Costain How the Web Works - Refresh Sean Costain 2012 The web is a matrix of servers that handle client requests.
Lecture 2: Technical Basics
A closer look Dynamic Webpages Jessica Meyerson March 1, 2011.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Chapter 6 DOJO TOOLKITS. Objectives Discuss XML DOM Discuss JSON Discuss Ajax Response in XML, HTML, JSON, and Other Data Type.
IT 210 The Internet & World Wide Web introduction.
CSCI 6962: Server-side Design and Programming Introduction to AJAX.
Lecture 12 – AJAX SFDV3011 – Advanced Web Development Reference: 1.
Internet-Based Client Access
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
 2008 Pearson Education, Inc. All rights reserved Ajax-Enabled Rich Internet Applications.
Chapter 4: Core Web Technologies
Java Omar Rana University of South Asia. Course Overview JAVA  C/C++ and JAVA Comparison  OOP in JAVA  Exception Handling  Streams  Graphics User.
Enabling Embedded Systems to access Internet Resources.
Intro to Ajax Fred Stluka Jan 25, /25/2006Intro to AjaxFred Stluka2 What is Ajax? "Asynchronous JavaScript and XML" New name for an old technique:
ITIS 1210 Introduction to Web-Based Information Systems Chapter 23 How Web Host Servers Work.
第十四章 J2EE 入门 Introduction What is J2EE ?
CSCI 6962: Server-side Design and Programming Web Services.
NOTE: To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image. WEB.
Instructor, Dr. Khalili Bahram Jeevan Kumar Gogineni.
Lecture 15 Introduction to Web Services Web Service Applications.
Ventsislav Popov Crossroad Ltd.. 1. What is AJAX?  AJAX Concept  ASP.NET AJAX Framework 2. ASP.NET AJAX Server Controls  ScriptManager, UpdatePanel.
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Overview Web Session 3 Matakuliah: Web Database Tahun: 2008.
AJAX Compiled from “AJAX Programming” [Sang Shin] (Asynchronous JavaScript and XML)
.  A multi layer architecture powered by Spring Framework, ExtJS, Spring Security and Hibernate.  Taken advantage of Spring’s multi layer injection.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
Asynchronous Javascript And XML AJAX : an introduction UFCEUS-20-2 : Web Programming.
the acronym for Asynchronous JavaScript and XML.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Chapter 16: Ajax-Enabled Rich Internet Applications with XML and JSON TP2543 Web Programming Mohammad Faidzul Nasrudin.
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
AJAX and REST. Slide 2 What is AJAX? It’s an acronym for Asynchronous JavaScript and XML Although requests need not be asynchronous It’s not really a.
JavaScript and Ajax (Internet Background) Week 1 Web site:
Rich Internet Applications: Better Practices for Financial Services Stephen Turbek, Avenue A | Razorfish.
Introduction to the World Wide Web & Internet CIS 101.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
Overview Web Technologies Computing Science Thompson Rivers University.
Web Services Essentials. What is a web service? web service: software functionality that can be invoked through the internet using common protocols like.
Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
Web Programming Language
Web Technologies Computing Science Thompson Rivers University
Web Concepts Lesson 2 ITBS2203 E-Commerce for IT.
World Wide Web policy.
AJAX – Asynchronous JavaScript and XML
AJAX.
Secure Web Programming
MIS JavaScript and API Workshop (Part 3)
Chengyu Sun California State University, Los Angeles
AJAX CS-422 Dick Steflik.
Chengyu Sun California State University, Los Angeles
Web Technologies Computing Science Thompson Rivers University
Ajax and JSON Jeremy Shafer Department of MIS Fox School of Business
Class 4: Building Interactive Web Pages
Web Servers (IIS and Apache)
Ajax and JSON Jeremy Shafer Department of MIS Fox School of Business
Presentation transcript:

Ajax / Rich Internet Applications ICW Lecture 21 Errol Thompson

Proposed learning Clarify the divide between client and server in web programming Expand understanding of client programming options – Asynchronous interaction options – Rich internet applications Thinking outside the box

The client / server divide What is the nature of A desktop application A browser based application A server-based application Is it possible to treat them as the same thing? If not, why not? If so, why and how?

Assumed knowledge – Protocols Transport protocol TCP/IP and sockets Application protocols smtp, http, https, ftp What did you have to implement with your browser? What do you expect the server to be doing?

Assumed knowledge – Static content What does it mean to have static content? What does the server have to do? What does the browser have to do What is the problem with static pages?

A scenario Jack want an application that will allow him to enter information about cyclists who enter his road race events. He wants it to be a web application as he wants to integrate the list with a system for commissaires to manage the race and for reporting race progress and results. Will this work with static pages? – Why or why not?

Dynamic content – Server based Where is the servlet or JSP code run? What does it do? What protocols are involved? What happens in the browser? Where is Javascript code run? What does Javascript do? What are its limitations?

Removing page reload - AJAX On what technologies and protocols is AJAX coding based? In what respect is it asynchronous? What type of requests can be made? How are responses to requests handled? What are the states that nee to be considered? Why check the status codes in a response? What do you need to do to have changes reflected on the web page? What is the impact of browser caching and how can it be resolved?

Transferring data How is parameter data passed to the server? ‘GET’ parameters ‘POST’ data How is data returned from the server? Is there any limitations on the data transferred? Why or why not?

Formatting data for transfer What data formats can be used? Anything that you can handle Write your own logic XML Work with a document object model (DOM) JSON (JavaScript Object Notation) Uses “normal” JavaScript

JSON Rider data {“rider”: [ { “number”, 231, “name”, “Fred Dagg”, “club”, “UofB Cycling Club”, “sponsor”, “” } ] };

Accessing JSON data var rider= eval(‘(‘ + request.responseText + ‘)’ ); var name = rider.rider[0].name; var number = rider.rider[0].number;.

Issues with AJAX How vulnerable is AJAX code to attack? How easy is it to maintain the DOM model? Is it possible to use other protocols with AJAX type coding? How compatible are browsers?

Application in the browser – Rich Internet Applications (RIA) Can we code for the browser in the same way that we can browse for the desktop? Flex/Flash, JavaFX, Silverlight What are the issues? Browser support Install of virtual machine (VM)

Cloud computing Applications accessible through the browser Configurable to individual customer needs Removes need for company to manage their own application servers

Breaking the boundaries The future of the browser Collaboration over the web Portability between desktop and mobile device Remove the boundaries between browser and desktop

Next time Review