Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key.

Slides:



Advertisements
Similar presentations
Java Script Session1 INTRODUCTION.
Advertisements

DT228/3 Web Development WWW and Client server model.
Copyright 2004 Monash University IMS5401 Web-based Systems Development Topic 2: Elements of the Web (g) Interactivity.
6/3/2015eBiquity1 Tutorial on AJAX Anubhav Kale (akale1 AT cs DOT umbc DOT edu)
AJAX Presented by: Dickson Fu Dimas Ariawan Niels Andreassen Ryan Dial Jordan Nielson CMPUT 410 University of Alberta 2006.
Cloud Computing Lecture #7 Introduction to Ajax Jimmy Lin The iSchool University of Maryland Wednesday, October 15, 2008 This work is licensed under a.
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
Chapter 11 ASP.NET JavaScript, Third Edition. 2 Objectives Learn about client/server architecture Study server-side scripting Create ASP.NET applications.
1 JavaScript & AJAX CS , Spring JavaScript.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
1 Web Servers (IIS and Apache) Outline 9.1 Introduction 9.2 HTTP Request Types 9.3 System Architecture 9.4 Client-Side Scripting versus Server-Side Scripting.
INTRODUCTION TO WEB DATABASE PROGRAMMING
DHTML. What is DHTML?  DHTML is the combination of several built-in browser features in fourth generation browsers that enable a web page to be more.
1 CS 3870/CS 5870 Static and Dynamic Web Pages ASP.NET and IIS.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
Introduction to AJAX AJAX Keywords: JavaScript and XML
Architecture Of ASP.NET. What is ASP?  Server-side scripting technology.  Files containing HTML and scripting code.  Access via HTTP requests.  Scripting.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Copyright © cs-tutorial.com. Introduction to Web Development In 1990 and 1991,Tim Berners-Lee created the World Wide Web at the European Laboratory for.
May 16 – 18, 2007 Copyright 2007, Data Access Worldwide May 16 – 18, 2007 Copyright 2007, Data Access Worldwide Build Great Web Application 'Fast and Easy'
Ruth Betcher Ruth Christie
11/13/2007 A synchronous J avaScript A nd X ML Gloria Law Joshua Mahaz.
CSCI 6962: Server-side Design and Programming Introduction to AJAX.
ASP.NET + Ajax Jesper Tørresø ITNET2 F08. Ajax Ajax (Asynchronous JavaScript and XML) A group of interrelated web development techniques used for creating.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
1 rfXcel Confidential Copyright 2007 Web Technology JavaScript 12/10/07.
06/10/2015AJAX 1. 2 Introduction All material from AJAX – what is it? Traditional web pages and operation Examples of AJAX use Creating.
Ajax. –Asynchronous JavaScript and XML –Umbrella term for technologies that often: Use client-side scripting for layout and formatting Use less than full.
 2004 Prentice Hall, Inc. All rights reserved. 1 Segment – 6 Web Server & database.
Active Server Pages  In this chapter, you will learn:  How browsers and servers interacted on the Internet when the Internet first became popular 
1 Welcome to CSC 301 Web Programming Charles Frank.
Introduction to ASP.NET1. 2 Web applications in general Web applications are divided into two parts –The server part –The client part The server part.
Ventsislav Popov Crossroad Ltd.. 1. What is AJAX?  AJAX Concept  ASP.NET AJAX Framework 2. ASP.NET AJAX Server Controls  ScriptManager, UpdatePanel.
Introducing ASP.NET 2.0. Internet Technologies WWW Architecture Web Server Client Server Request Response Network HTTP TCP/IP PC/Mac/Unix + Browser (IE,
Building Rich Web Applications with Ajax Linda Dailey Paulson IEEE – Computer, October 05 (Vol.38, No.10) Presented by Jingming Zhang.
Telerik Software Academy ASP.NET Web Forms Telerik Software Academy ASP.NET Web Forms.
Open Solutions for a Changing World™ Copyright 2005, Data Access WordwideElectos June 6-9, 2005 Key Biscayne, Florida Data Access Europe BV Eddy Kleinjan,
Fall 2006 Florida Atlantic University Department of Computer Science & Engineering COP 4814 – Web Services Dr. Roy Levow Part 2 – Ajax Fundamentals.
Ajax. –Asynchronous JavaScript and XML –Umbrella term for technologies that often: Use client-side scripting for layout and formatting Use less than full.
Overview of Form and Javascript fundamentals. Brief matching exercise 1. This is the software that allows a user to access and view HTML documents 2.
Cs332a_chapt10.ppt CS332A Advanced HTML Programming DHTML Dynamic Hypertext Markup Language A term describing a series of technologies Not a stand-a-lone.
Asynchronous Javascript And XML AJAX : an introduction UFCEUS-20-2 : Web Programming.
Producing a high-impact web experience by integrate Macromedia Flash and ASP By Katie Tuttle CS 330: Internet Architecture and Programming Project.
 Previous lessons have focused on client-side scripts  Programs embedded in the page’s HTML code  Can also execute scripts on the server  Server-side.
INT222 - Internet Fundamentals Shi, Yue (Sunny) Office: T2095 SENECA COLLEGE.
Scripting Languages Client Side and Server Side. Examples of client side/server side Examples of client-side side include: JavaScript Jquery (uses a JavaScript.
Introduction to HTML. _______________________________________________________________________________________________________________ 2 Outline Key issues.
SE-2840 Dr. Mark L. Hornick 1 Introduction to Ajax Asynchronous Javascript And XML.
 Web pages originally static  Page is delivered exactly as stored on server  Same information displayed for all users, from all contexts  Dynamic.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
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:
What is AJAX ? Asynchronous Javascript and XML. Not a stand-alone language or technology. It is a technique that combines a set of known technologies in.
Web Technology (NCS-504) Prepared By Mr. Abhishek Kesharwani Assistant Professor,UCER Naini,Allahabad.
 AJAX technology  Rich User Experience  Characteristics  Real live examples  JavaScript and AJAX  Web application workflow model – synchronous vs.
Overview Web Technologies Computing Science Thompson Rivers University.
Ajax SUBMITTED BY NITIN RAMANI C.S.E 3 rd Y 5 th S R.N CS SUBMITTED TO PRO. PUSHPARAJ PATEL SIR.
National College of Science & Information Technology.
1 Chapter 1 INTRODUCTION TO WEB. 2 Objectives In this chapter, you will: Become familiar with the architecture of the World Wide Web Learn about communication.
JavaScript and Ajax (Ajax Tutorial)
Not a Language but a series of techniques
JavaScript and Ajax (Internet Background)
AJAX and REST.
AJAX.
Asynchronous Java script And XML Technology
AJAX.
AJAX CS-422 Dick Steflik.
Web Application Development Using PHP
Presentation transcript:

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Data Access Europe BV Eddy Kleinjan New Techniques for Building Web Applications

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Agenda  Introduction  Base Web Techniques  Remote Scripting  Advanced User Interfaces  Framework Integration

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Introduction

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Introduction  User Interfaces need to be more attractive  Web Applications need to be more Interactive  Current Broadband Connections Make it work

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Base Web Techniques  HTML  Server Side Scripting (ASP)  Client Side Scripting (JavaScript)  Document Object Model (DOM)

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida HTML  Default language for Web Pages  Mixes Data with Format  Limited Communication with Web Servers (Form)

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Server Side Scripting (ASP)  Executes at Server  Only Results are sent back  Build HTML pages Dynamically  Communicate with VDF Web App Server Directly

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Client Side Scripting (JavaScript)  Executes at the Client  Ability to Manipulate Content using the DOM  Function can respond to Generated Events

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Document Object Model (DOM)  Provides an Object Hierarchy to a Browser  Complete Hierarchy can be Accessed  Element can be Dynamically Modified

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting Remote Scripting is the process by which a client-side application running in the browser and a server-side application can exchange data without reloading the page Source:

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting  Execute Scripts at the Server Interactively  Comparable to an Remote Procedure Call  Client/Server Architecture  Loading Data into Invisible Frame or IFrame  Generating JavaScript at the Server  Exchange XML Data  Use Web Services

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting using IFrame Client.htm Server.asp IFrame Server.asp Link or Post Form, Target = IFrame 2. IFrame Requests Server Document 3. Server Document Calls WebApp 4. Results are sent back to IFrame IFrame calls Client (Parent Window) 6. Client Processes Results Current dataNew data 7. New data is shown

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting using IFrame  Create an Invisible IFrame on the page <iframe id="RSIFrame" name="RSIFrame" style="width:0px; height:0px; border: 0px" src="about:blank"> Client.htm Server.asp IFrame Server.asp Current data New data

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting using IFrame  Load new data into this IFrame by setting ‘target’ Make RPC call Client.htm Server.asp IFrame Server.asp Current data New data

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting using IFrame  Create a handler function in the Client // In Client Page function handleResponse(sMessage) { // Do whatever you want to do dynamically here UpdateTime(sMessage); alert(sMessage); } Client.htm Server.asp IFrame Server.asp Current data New data

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Remote Scripting using IFrame  Loaded Document in IFrame calls Parent <% sTime = oRemoteScripting.Call("GET_CurrentTime") %> window.parent.handleResponse(" ") Client.htm Server.asp IFrame Server.asp Current data New data

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Using hidden IFrame  Pros Fast Easy to use/implement High Browser Compatibility  Cons You’re writing a script generator High dependency between server and client software Executes Asynchronously

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Client.htm Generating JavaScript at the Server Load Script.asp Call function to create new script 2. Creates new script element 3. Calls Server for new Script 4. Server Produces new Script New Script is loaded 6. New Script is executed Current data New data 7. New data is shown New 5 7 Script.asp 2

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server // Function in client page function loadContent(file) { var scriptTag = document.getElementById('loadScript'); var head = document.getElementsByTagName('head').item(0) if(scriptTag) head.removeChild(scriptTag); var script = document.createElement('script'); script.src = file; script.type = 'text/javascript'; script.id = 'loadScript'; head.appendChild(script); } Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server  Dynamically create a element using DOM function loadContent(file) { var scriptTag = document.getElementById('loadScript'); var head = document.getElementsByTagName('head').item(0) if(scriptTag) head.removeChild(scriptTag); var script = document.createElement('script'); … } Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server  Set the src Attribute to point to your server function loadContent(file) { … script.src = file; // For example: Server.asp script.type = 'text/javascript'; script.id = 'loadScript'; … } Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server  Put the Script element in your Document This will load the script from the server and start executing it. function loadContent(file) { … head.appendChild(script); } Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Generating JavaScript at the Server  Using the loadContent Function <a href=“#” onclick="loadContent('JavascriptServer.asp'); return false"> Click me to do something dynamic Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Using loadContent Function  Pros Fast Easy to use/implement  Cons Is basically a script generator High dependency between server and client software Executes Asynchronously Client.htm script.asp Load Script.asp Current data New data New 5 7

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Exchanging XML Data

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Client.htm Exchanging XML Data Call function 2. Collect Client data in XML Doc 3. Send XML Doc to Server 4. Process XML Doc at Server Return Result XML Doc to Client 6. Process Result XML Doc at Client Current dataNew data 7. New data is shown 5 7 6

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Exchanging XML Data  Client Composes XML Doc for Request  Client Send Request using HTTP Protocol  Server reads XML Request creates XML Response  Server Sends XML Response  Client (Browser) Parses XML Response and Handles the Data  Synchronous and Asynchronous Calls Supported Client.htm Current dataNew data 5 7 6

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Exchanging XML Data  Client-Side component HTTP Communications  Supported Browsers Microsoft Internet Explorer using “Msxml2.XMLHTTP” Gecko based browsers using “XMLHttpRequest”  Mozilla Firefox  Netscape Client.htm Current dataNew data 5 7 6

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Using Exchanging XML Data  Pros Transfers Data instead of Code Flexible solutions Synchronous and Asynchronous Calls Supported  Cons Requires extra (standard) HTTP Control Harder to implement at first

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Advanced User Interfaces

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Advanced User Interfaces  Users Expect Windows-like User Interface  Browser Controls Have Limited Capabilities  Input Controls Max Length, Data Type, Capslock, Range Checking, etc.  List Controls Only Have One Column  Popup lists

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Framework Integration

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Framework Integration  Use Data Dictionary Information at the client Sizes, types, etc  Client Side Validation and Automated Actions Capslock, Autofind, Required Validations

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Order Entry Sample  Using XML Data Exchange  Header / Detail  Dynamic Generation of Table  Full Grid UI

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Browser Compatibility

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Browser Compatibility  Mozilla Firefox is being used more and more  IE and Firefox support DOM  Differences at detailed level  Populair amongs the more technical oriented  Average user sticks to available browser

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Questions?

Open Solutions for a Changing World™ Eddy Kleinjan Copyright 2005, Data Access WordwideNew Techniques for Building Web Applications June 6-9, 2005 Key Biscayne, Florida Thank you!