Web 2.0 Dailymotion YouTubeYouTube (Google) MySpace Facebook DMOZDMOZ (annuaire participatif) ExaleadExalead (moteur de recherche) AdSenseAdSense (Google)

Slides:



Advertisements
Présentations similaires
Jean-Pierre Villain - Qelios W3Café Accessibilité - Paris – Avril 2011
Advertisements

« Les Mercredis du développement » Ajax / Client CallBack / Atlas
Le web 2.0 L'Internet deuxième génération ? Moussay Jérôme - Master 2LCE1/16.
Présentation générale de SPIP Fonctionnalités principales dun CMS La séparation entre contenu et présentation Susciter linteractivité en interne et en.
Conception de Site Webs Interactifs Cours 3
Julien HERON.
Exposé de Système - Informatique et Réseau
Le développement d’applications sous Lotus Notes
Programmation Web Les JSP.
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
Adapté du cours de Sang Shin, Sun Microsystems
Design Pattern MVC En PHP5.
TP 3-4 BD21.
JSP Java Server Pages. Introduction Afin dimplémenter les règles métiers, coté serveur dans une application Web, larchitecture Java propose trois solutions.
Servlet JAVA.
Formulaire HTML Introduction. Définition de formulaire.
Introduction aux Web Services Partie 1. Technologies HTML-XML
Common Gateway Interface
Le Téléphone Russe Le Téléphone Russe. Le Téléphone Russe Le Téléphone Russe.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
INTRODUCTION Sites vitrines vs sites applicatifs Un concept abstrait
Etude des Technologies du Web services
AJAX et les langages serveurs
XML-Family Web Services Description Language W.S.D.L.
SERVLETS PRESENTATION
Ajax. Contexte Dabord, il y a eu les terminaux des ordinateurs centraux (environnements TSO, CICS, etc.) et les terminaux plein écran des environnements.
Développement Rapide dApplications Web avec.NET « Mon premier site »
Ajax Asynchronous JavaScript And XML
Les instructions PHP pour l'accès à une base de données MySql
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
Introduction aux technologies AJAX Ajax François BONNEVILLE
Méthode de suppression des cadres entourant les animations flash et activation automatique de leur focus lors du chargement des pages dans Internet Explorer.
Le formulaire Les chaînes de requêtes. Les chaînes de requêtes (QueryStrings) correspondent à des informations associées à l'adresse URL avec un point.
AJAX.
1 CSI 2532 Lab6 Application Web et DB Février 27, 2012.
Adaptée du cours de Richard Grin
Animateur : Med HAIJOUBI
Introduction aux technologies AJAX Ajax François BONNEVILLE
M2 – MIAGE/SID Servlet M2 – MIAGE/SID
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Techniques Internet de Base Licence 2 (Info, Maths, PC/PA) Université Jean Monnet Ruggero G. PENSA
PROGRAMMATION WEB FRONT-END.
JavaScript Nécessaire Web.
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
Cours de programmation web
CEG3585/CEG3555 Tutorat 2 Hi ver 2013.
GESTION DE COMPOSANTS ELECTRONIQUES
Séminaire (6-12 Février 2007) Promo. M2 ESCE-Tunis 2006/07
S'initier au HTML et aux feuilles de style CSS Cours 5.
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
Page 1Dernière mise à jour: 17 avril 2015 Service de l'enseignement des technologies de l'information, © HEC Montréal, Tous droits réservés.
AJAX Open Source Etat de l’art Baris Ulucinar, Octobre 2006 University of Fribourg, Suisse Sous la direction de Prof. O. Abou Khaled.
Asynchronous JavaScript And XML AJAX C. Petitpierre
AJAX.
G.KEMBELLEC - UP81 Master 2 THYP Cas pratique d’utilisation De simpleXML Un lecteur de RSS Novembre 2009.
AJAX Jérôme CUTRONA 06:28:58 Programmation Web
Les Servlets Présentation Cycle de vie Principe de fonctionnement
Développement et design Web Awaves academy Stockholm 2006.
Representational State Transfer - REST
Interaction Homme Machine
Apports des clients riches dans le monde du WEB 2.0
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
SOAP et les RPC XML SOAP WSDL RPC. Rappels sur le XML Langage avec des balises Très lisible Pour stocker des données Séparation entre contenu et présentation.
EFREI – – Mathieu Nebra Le développement Web.
SI28 – Ecriture interactive et multimédia Sylvain Slaton – Pierre Laporte.
Ajax1 A. Obaid - Programmation web (INF2005) AJAX.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
AJAX Jean-Jacques LE COZ. Introduction Technologie incontournable aujourd'hui Soubassement technique au Web 2.0 Technologie déjà présente dans les applications.
1 Programmation Web Programmation WAMP/LAMP Premiers principes.
Asynchronous Javascript And Xml
Transcription de la présentation:

Web 2.0 Dailymotion YouTubeYouTube (Google) MySpace Facebook DMOZDMOZ (annuaire participatif) ExaleadExalead (moteur de recherche) AdSenseAdSense (Google) Del.icio.usDel.icio.us (Yahoo!) Picasa Web AlbumPicasa Web Album (Google) FlickrFlickr (Yahoo!) Wikipédia AgoraVox Last.fm Yoolink Twitter Livesticker LinkedFeed NetvibesNetvibes (portail) StumbleUpon Technorati Digg Le phénomène des blogs - 70 millions dans le monde et plus de 3 millions en France

Tim O'Reilly en 2004 Désigne un renouveau du www dans : –les technologies employées –L’utilisation du web Le maître mot : Interaction des internautes –Avec les contenus –Entre eux

Historique web 1.0 : pages web statiques, rarement mises à jour. web 1.5 : web dynamique –Le contenu est dynamique via des bases de données. web 2.0 web orienté interaction entre les utilisateurs – le crowdsourcing –la création de réseaux sociaux rudimentaires. – utilisation de templates pour les graphiques. –Dans le Web 2.0, l'internaute est acteur. Il contribue à alimenter en contenu les sites, blogs, wikis,...blogswikis –l'utilisateur doit rester propriétaire de ses propres données

Technologies l'utilisation de CSS, d'un balisage XHTML et des microformats les techniques d’applications riches telles qu'AJAX ; la catégorisation par étiquetage ; l'utilisation appropriée des URL ; une architecture REST ou des services web XML.

la syndication et l'agrégation de contenu RSS Evolution la + importante : la syndication de contenu En utilisant des protocoles standardisés permettant aux utilisateurs de faire usage des données d'un site dans un autre contexte, allant d'un autre site web au plugin d'un navigateur, ou même d'une application de bureau séparée. Les protocoles permettant la syndication comprennent RSS, RDF (comme dans RSS 1.1) et Atom, tous étant basés sur le langage XML. Des protocoles spécialisés tels que FOAF et XFN (tous deux pour les réseaux sociaux) étendent les fonctionnalités des sites et permettent aux utilisateurs d'interagir de façon décentralisée.RSSRDFAtomXMLFOAFXFN

Protocoles web REST (REpresentational State Transfer) indique une façon d'échanger et de manipuler des données en utilisant simplement les verbes HTTP GET, POST, PUT et DELETE. SOAP implique de poster à un serveur des requêtes XML comprenant une suite d'instructions à exécuter. WSDL (Web Services Description Language), un standard de publication des interfaces de services web.

AJAX Asynchronous JavaScript And XML J. J. Garrett. J. J. Garrett « XML et Javascript asynchrones »), seulement un nom donné à un ensemble de techniques préexistantes. AJAX est un type de programmation rendue populaire en 2005 par Google (avec Google Suggest). Acronyme désignant une méthode informatique HTML (ou XHTML) CSS; DOM et JavaScript XML, XSLT l'objet XMLHttpRequest (depuis IE 4.0)

But d’Ajax Lutter contre le chargement intempestive de page http : recharge total de la page à chaque modification Actualiser le client sans recharger la totalité de la page Effectuer des traitements sur le poste client (avec JavaScript) à partir d'informations venues du serveur. Utilise le transfert de données asynchrome (HTTP requests) entre le navigateur et le serveur Web Permet aux page web de requeter de petites quantités d’information plus que des pages entières

La technique AJAX rend les applications web –Plus petites –Plus rapides –Plus conviviales AJAX est une technique CLIENTE, donc indépendante des serveurs web utilisés

Fonctionnement Présentation / évènements Evènements = les actions de l'utilisateur = provoquent l'appel des méthodes liées aux élts Interaction = formulaire ou bouton html Elt de la page = identifié grâce au DOM = communique avec le serveur via l'objet XMLHttpRequest XMLHttpRequest -> open (établit une connexion) et send (envoie une requête au serveur) <- responseXml, responseText, accessible dans responseXml

Fonctionnement Disponibilité des données : Fournie par l’attribut readyState de XMLHttpRequest 0: non initialisé. 1: connexion établie. 2: requête reçue. 3: réponse en cours. 4: terminé.

XMLHttpRequest Attributs readyState : le code d'état passe successivement de 0 à 4 qui signifie "prêt". Status - : 200 est ok, 404 si la page n'est pas trouvée. responseText : contient les données chargées dans une chaîne de caractères. responseXml : contient les données chargées sous forme xml, les méthodes de DOM servent à les extraire. Onreadystatechange : propriété activée par un évènement de changement d'état. On lui assigne une fonction. Méthodes open(mode, url, boolean) send("chaine")

Exemple Prérequis –HTML / XHTML –JavaScript Exemple : toute saisie dans le champs « nom » provoque l’affichage de titi dans le champs heure

Maj Asynchrone Name: Time: Exemple de w3c

AJAX - Browser Support La pierre angulaire d’Ajax est l’objet XMLHttpRequest Internet Explorer utilise un ActiveXObject, Les autres browser utilisent l’objet JavaScript appelé XMLHttpRequest.

function ajaxFunction() { var xmlHttp; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) {// Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("Your browser does not support AJAX!"); return false; } } Name: Time:

L’objet XMLHttpRequest 3 propriétés importantes : 1.La propriété onreadystatechange 2.La propriété readyState 3.La propriété responseText Fonction qui peut recevoir les données qui sont retournées par le serveur xmlHttp.onreadystatechange=function() { quoi faire de la réponse du serveur }

L’objet XMLHttpRequest La propriété readyState Qui dispose de 5 états xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { // récupére les données du serveur }

L’objet XMLHttpRequest La propriété responseText xmlHttp.onreadystatechange=function() { if(xmlHttp.readyState==4) { document.monForm.heure.value= xmlHttp.responseText; }

Envoyer une requete au serveur xmlHttp.open("GET", "es",true); xmlHttp.send(null);

Le formulaire événementiel Name: <input type="text" onkeyup="ajaxFunction();" name="nom" /> Time:

function MaFonctionAjax() { var xmlHttp; try { xmlHttp =new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp =new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlHttp =new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { alert("Your browser does not support AJAX!"); return false; } xmlHttp.onreadystatechange=function() { // la fonction qui suit est appelée à chaque chgt d'evt if(xmlHttp.readyState==4) { document.monForm.heure.value= xmlHttp.responseText; } xmlHttp.open("GET","es",true); //ou xmlHttp.open("GET"," xmlHttp.send(null); } Name: Time:

function submitForm() { var xhr; try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e2) { try { xhr = new XMLHttpRequest(); } catch (e3) { xhr = false; } } xhr.onreadystatechange = function() { if(xhr.readyState == 4) { if(xhr.status == 200) document. monForm.monChamp ="r:" + xhr.responseText; else document. monForm.monChamp ="Error code " + xhr.status; } }; xhr.open( GET", "data.xml", true); xhr.send(null); }

Origine des données xhr.responseText : lit la réponse envoyée par le serveur lit dans un fichier xml if(xhr.status == 200) { var doc = xhr.responseXML; // Assigner le fichier XML à une variable var element = doc.getElementsByTagName('servlet-class').item(1); // Lit le 2ème tag servlet-class document……= element.firstChild.data; // Copier le contenu dans le formulaire }

Ecrire dans la page... un texte à remplacer... document.getElementById("zone").innerHTML = "Received:" + xhr.responseText;

Le serveur Envoie n’importe quelle donnée : public class Serv1 extends HttpServlet { public void service ( HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println("il est midi "); } Utilisation de la méthode service

JavaScript document.myForm.txtCache.value = « aaa » –Assigne le texte « aaa » à l’input du nom « textCache » qui se trouve dans le formulaire myForm document.getElementById("txtCache2").innerHTML= "coucou" –Assigne le texte "coucou" à la zone de texte « txtcach2 » permet d’afficher la zone de texte « txtCache2 »

À vous … Quand je saisie une lettre dans le champ « name », le champ « time » affiche l’heure système du serveur Quand on clique sur le bouton « détail », le texte du fichier data.htm s’affiche à l’écran.

Lecture d’un fichier xml function submitForm() { var xhr; try { xhr = new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { try { xhr = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e2) { try { xhr = new XMLHttpRequest(); } catch (e3) { xhr = false; } } xhr.onreadystatechange = function() { if(xhr.readyState == 4) { if(xhr.status == 200) { var doc = xhr.responseXML; var element = doc.getElementsByTagName(‘mettreLeNomDeBaliseXml').item(1); document.getElementById("txtCache").innerHTML= element.firstChild.data; } }; xhr.open( "GET", "data3.xml", true); xhr.send(null); }

Inconvénients d'Ajax (JavaScript doit être activé dans le navigateur) Le délai d’attente des modifications Les données ne sont pas prises en compte par les moteurs de recherche