Web 2.0. Ajax. DWR, DoJo
|
|
- Catherine Jolicoeur
- il y a 6 ans
- Total affichages :
Transcription
1 Web 2.0 Ajax DWR, DoJo 1
2 Plan Web 2.0 et Web Sémantique AJAX Histoire But d'ajax En quoi consiste Ajax? Architecture technique d Ajax Ajax et DHTML L'objet XMLHttpRequest Construire une requête, pas à pas Exemples de pages Ajax Comment faire un site Ajax? Inconvénients d'ajax DWR DoJo 2
3 Plan Web 2.0 et Web Sémantique 3
4 Web 2.0 Historique Naissance du terme lors de la Conférence Web 2.0 en octobre 2004 ; Terme inventé par : Dale DOUGHERTY de la O Reilly Media Craig CLINE de MediaLive et John BATELLE De web 1.0 à web 2.0
5 Web 2.0 Comparaison du Web 1.0 et du Web 2.0 : On constate à partir de l année 2005 environ, une modification du comportement des utilisateurs sur le Web. Ces nouvelles manières de travailler proviennent d une démocratisation d Internet ainsi que de performances accrues en termes de vitesse de connexion et de disponibilité Le Consortium W3 (W3C) est l organisation qui développe des standards pour le Web dans l optique d unifier les pratiques et de promouvoir la compatibilité des outils. Pour qualifier leweb 2.0, nous pouvons établir trois comparaisons qui illustrent bien les changements d approche et de comportement Netscape vs. Google Akamai vs BitTorrent DoubleClick vs Google AdSense 5
6 Web 2.0 Netscape vs. Google Netscape: Un navigateur très populaire dans les premières heures du Web, était un logiciel. Il devait être téléchargé et installé. Régulièrement, il fallait s inquiéter des mises à jour disponibles et les installer. Les problèmes de compatibilité devaient quant à eux être résolus par l utilisateur. Tout ceci rendait l utilisation d un ordinateur et la navigation sur Internet relativement fastidieuse. Google : également de nombreux autres nouveaux outils du Web. Plus rien à télécharger, plus rien à installer. Nous travaillons avec des services qui sont offerts par les différentes compagnies du Web. Les mises à jour sont réalisées régulièrement par le moteur de recherche et sont complètement transparentes pour l utilisateur. L utilisateur peut travailler à tout moment avec la dernière version sans avoir à s inquiéter de sa mise à jour. 6
7 Web 2.0 Akamai vs BitTorrent Akamai : était à l époque un immense serveur sur lequel les internautes déposaient les fichiers qu ils souhaitaient partager avec d autres. Ces derniers devaient se connecter à ce serveur pour récupérer ces fichiers. BitTorrent: Aujourd hui grâce à des systèmes tel que BitTorrent chacun peut devenir "serveur". Chacun peut mettre sa bibliothèque de documents, musiques, vidéos, etc. à disposition des autres internautes. Ceci bien évidemment entraîne les dérives que l on sait, en particulier en ce qui concerne les droits d auteurs des artistes. Pourtant, on perçoit pour la première fois l idée de communauté car un internaute ne peut plus "survivre" tout seul de son côté, il doit participer à la vie du Web en partageant ses documents. 7
8 Web 2.0 DoubleClick vs Google AdSense DoubleClick: était une entreprise qui gérait la publicité pour les sites Internet. Chaque développeur pouvait s adresser à DoubleClick pour présenter des écrans publicitaires sous forme de logos, de bannières, etc. On ne pouvait pas à l époque présenter de la publicité sur son site et générer de ce fait quelques bénéfices personnels sans passer par un "fournisseur", c est-à-dire une entreprise spécialisée dans ce domaine. AdSense : a été développé par Google et permet d afficher de la publicité sur n importe quel site. Sa force est double. Tout d abord, Ad- Sense est gratuit et son installation est aisée. De ce fait, il peut être utilisé par n importe qui, professionnel ou non du Web, et débouche sur la réalisation de quelques bénéfices pour ses utilisateurs. En effet, chaque «clic» sur une publicité génère un petit revenu pour le propriétaire du site. Ensuite, sa force réside dans l intelligence du service. Les publicités affichées par AdSense sont en rapport direct avec le contenu du site. Un système de mots-clés permet de sélectionner de manière automatique les annonces le plus pertinentes et intéressantes pour les visiteurs du site en question. 8
9 Web 2.0 Définition Web 2.0 est un terme souvent utilisé pour désigner ce qui est perçu comme une transition importante du World Wide Web, passant d'une collection de sites Web à une plate-forme informatique à part entière, fournissant des applications Web aux utilisateurs. Source de la définition:
10 Web 2.0 Qu est-ce que ça veut dire? Le Web 2.0 vise l'interaction entre les utilisateurs. Plusieurs site Web 2.0 sont de véritable réseaux sociaux où chacun peut participer au développement du site. Le Web est en train de devenir une plate-forme à part entière où l utilisateur pourra avoir accès à ses données de n importe quel poste. Voici des exemples: o Blogue o Wikipédia et Wiki o Site de favoris collaboratif o Site d entreposage de vidéos (You Tube) o Netvibes
11 Web 2.0 L'expression "Web 2.0" renvoie à la seconde phase du Web, aussi bien en terme d'architecture qu'en terme d'applications qui y sont développées Programmation légère RSS & Notification Web participatif Web 2.0 Le Web en tant que plateforme Indépendance aux terminaux Valeur cumulée de l'intelligence collective "La valeur est dans les données"
12 Web 2.0 Web participatif Le web devient un medium pleinement participatif dans lequel les utilisateurs sont à la fois lecteurs et auteurs. Cette participation n'est pas restreinte aux médias, elle touche également de plus en plus la communication. Le web en tant que plateforme La plupart des services Web 2.0 émergents offrent une partie de leurs fonctionnalités à travers d'apis que des développeurs tiers peuvent mettre à profit dans leurs propres applications. Valeur cumulée de l'intelligence collective Les actions cumulées des utilisateurs et les données qu'ils produisent (des tags par exemple) ajoutent de la valeur au système global.
13 Web 2.0 Indépendance aux terminaux Il est important de remarquer que le Web 2.0 n'est pas restreint au monde des PC. Le téléphone mobile devient un véritable bureau virtuel.
14 Web 2.0 RSS et notification RSS permet aux utilisateurs de souscrire à une page web et d'être notifiés de tout changement sur cette page. Programmation légère L'ouverture des API(application de programmation informatique) permet aux plus technophiles des internautes de coupler des applications existantes pour en créer de nouvelles (phénomène du "mash-up"). Les types de langages et d'interfaces les plus répandus dans le Web 2.0 sont des langages légers.
15 Web 2.0 Les améliorations et les innovations du Web 2.0 : AJAX RSS Wiki Mashup Permalink XHTML Applications Internet Riches Web sémantique 15
16 Web 2.0 AJAX. AJAX (Asynchronous Javascript And XML) est la solution phare du Web 2.0. Ce n est pas une technologie en soi mais cela évoque l utilisation conjointe de différentes normes et standards (XML, Javascript, XSLT, DOM, CSS, XHTML, entre autres)
17 Web 2.0 Flux RSS L acronyme RSS est du terme anglais «Really Simple Syndication». Ce système permet de diffuser en temps réel les nouvelles des sites d'informations ou des blogues, ce qui permet de consulter rapidement ces dernières sans visiter le site.
18 Web 2.0 Wiki Le terme wiki est un mot Hawaïen qui signifie rapide. Le wiki est une page web qui permet une collaboration et qui ne demande aucune connaissance (ou très peu) de langage HTML. Mashup Site ou application dont le contenu provient de plusieurs sources d information (carte géographique + info).
19 Web 2.0 Permalink (permalien) est un mot-valise formé par la contraction linguistique des mots permanent et lien. Un permalien est l'url initiale d'un article ou d'une page (souvent une nouvelle ou une entrée de weblog) et restant inchangé de façon permanente, ou du moins, pour une certaine période de temps XHTML Le XHTML (acronyme de Extensible HyperText Markup Language) est un langage de création de pages web. XHTML est le remplaçant du langage HTML. Sa structure est modélisée sur le XML, alors que celle de son prédécesseur l'était sur le SGML, plus ancien 19
20 Web 2.0 Synthèse Le Web 2.0 est constitué d une multitude de petites améliorations ou innovations sur le plan technique, ergonomique et sémantique Quels sont les apports du Web 2.0 pour l utilisateur? Moins de clics Plus d informations affichées à l écran Moins de temps de chargement Chacun apporte un contenu (blog, wiki, réseaux sociaux) Les utilisateurs sont des co-développeurs Les services web se développent (ex : Skype, Google ) 20
21 Web 2.0 Les apports pour la machine : Interface plus flexible Une interopérabilité plus poussée Le web 2.0 en tant que plateforme AJAX, JavaScript et le Web
22 Quelques liens à propos du Web 2.0 Webographie : CAVAZZA Frédéric. Web 2.0 : la révolution par les usages. [en ligne]. Disponible sur 20.shtml. O REILLY Tim. What is Web 2.0. [en ligne]. Disponible sur oreillyversion.html Web 2.0. [en ligne]. Disponible sur
23 Plan AJAX Histoire But d'ajax En quoi consiste Ajax? Architecture technique d Ajax Ajax et DHTML L'objet XMLHttpRequest Construire une requête, pas à pas Exemples de pages Ajax Comment faire un site Ajax? Inconvénients d'ajax 29
24 Histoire Le terme AJAX est l'acronyme de "Asynchronous JavaScript and XML", utilisé pour la première fois par Jesse James Garrett dans son article " Ajax: A New Approach to Web Applications". Ce terme c'est depuis popularisé. Ajax est un concept qui n'est pas lié particulièrement à un langage de développement et à un format d'échange de données pour faciliter la portabilité, la mise en œuvre, AJAX fait appel aux technologies Javascript et XML. Ajax est seulement un nom donné à un ensemble de techniques préexistantes. Ajax dépends essentiellement de XMLHttpRequest, un objet coté client utilisable en JavaScript, qui est apparu avec Internet Explorer
25 But d Ajax Ajax permet d'effectuer des traitements sur le poste client (avec JavaScript) à partir d'informations prises sur le serveur. Ajax permet de modifier partiellement la page affichée par le navigateur pour la mettre à jour sans avoir à recharger la page entière. Par exemple le contenu d'un champ de formulaire peut être changé sans avoir à recharger la page avec le titre, les images, le menu, etc. La création de pages web dynamiques auparavant se faisait coté serveur. Les modifications ou interrogations, faites par le lecteur de la page, sont des requêtes envoyées au serveur, faisant qu'il crée une nouvelle page et l'envoie au navigateur à travers le réseau Internet en utilisant des services web, ou un langage intégré dans la page comme PHP., JSP, ASP,.. Ce n'est plus nécessaire GRACE A AJAX Améliorer l'interactivité et le dynamisme de l'application web 31
26 But d Ajax Exemple : Pour donner une idée simple des puissantes possibilités offertes par Ajax, un exemple peut être offert en utilisant Google Suggest à l'url : 32
27 En quoi consiste Ajax Ajax est une technique qui fait usage des éléments suivants: HTML. CSS (Cascading Style-Sheet) pour la présentation de la page. JavaScript pour les traitements locaux DOM (Document Object Model) qui accède aux éléments de la page ou du formulaire ou aux éléments d'un fichier xml pris sur le serveur (avec la méthode getelementbytagname par exemple)... L'objet XMLHttpRequest lit des données ou fichiers sur le serveur de façon asynchrone. DOMparser pour le traitement des documents XML ; JSP, PHP ou un autre langage de scripts peut être utilisé coté serveur. 33
28 En quoi consiste Ajax Le terme "Asynchronous", asynchrone en français, signifie que l'exécution de JavaScript continue sans attendre la réponse du serveur qui sera traitée quand elle arrivera. Tandis qu'en mode synchrone, le navigateur serait gelé en attendant la réponse du serveur. Le fait de pouvoir opérer des actions asynchrones côté serveur et des mises à jour partielles d'une page web permet d'offrir de nombreuses possibilités de fonctionnalités : Rafraîchissement de données : par exemple rafraîchir le contenu d'une liste lors d'une pagination Auto-complétion d'une zone de saisie Validation de données en temps réel Modifier les données dans une table sans utiliser une page dédiée pour faire la mise à jour. Lors du clic sur un bouton modifier, il est possible de transformer les zones d'affichage en zones de saisie, d'utiliser Ajax pour envoyer une requête de mise à jour côté serveur à la validation par l'utilisateur et de réafficher les données modifiées à la place des zones de saisies 34
29 Architecture technique d Ajax Sans Ajax : Mode Synchrone 35
30 Architecture technique d Ajax Sans Ajax : Mode Synchrone 36
31 Architecture technique d Ajax Avec Ajax : Mode Asynchrone 37
32 Architecture technique d Ajax Avec Ajax : Mode Asynchrone 38
33 Architecture technique d Ajax Tous ces traitements sont déclenchés par un événement utilisateur sur un composant (clic, changement d'une valeur, perte du focus,...) ou système (timer,...) dans la page. La partie centrale d'ajax est un moteur capable de communiquer de façon asynchrone avec un serveur en utilisant le protocole http. Généralement les appels au serveur se font via l'objet Javascript XMLHttpRequest. XMLHttpRequest n'est pas défini dans les spécifications courantes de Javascript mais il est implémenté dans tous les navigateurs récents car il devient un standard. Il est donc important de noter qu'ajax ne fonctionnera pas sur des navigateurs anciens. L'objet XMLHttpRequest occupe un rôle majeur dans Ajax puisqu'il assure les communications entre le client et le serveur. 39
34 Architecture technique d Ajax AJAX nécessite une architecture différente côté serveur: Habituellement en réponse à une requête le serveur renvoie le contenu de toute la page En réponse à une requête faite via AJAX, le serveur doit renvoyer des informations qui seront utilisées côté client par du code Javascript pour mettre à jour la page Le format de ces informations est généralement XML mais ce n'est pas une obligation Le rafraîchissement partiel d'une page via Ajax permet d'accroître la réactivité de l'ihm mais aussi de diminuer la bande passante et les ressources serveurs consommées lors d'un rafraîchissement complet de la page web La mise à jour partielle d'une page en modifiant directement son arbre DOM permet de conserver le contexte de l'état de la page. Les parties inchangées via le DOM restent inchangées et sont toujours connues et utilisables Attention à l utilisation du bouton back du navigateur dans le cas d un rafraîchissement à chaque action avec Ajax 40
35 Architecture technique d Ajax Pour utiliser Ajax dans une page HTML, il faut que : le support de Javascript soit activé dans le navigateur ; Le navigateur implémente l objet XMLHttpRequest ; L'objet XMLHttpRequest permet un échange synchrone ou asynchrone avec le serveur en utilisant le protocole HTTP. La requête http envoyée au serveur peut être de type GET ou POST. Une communication asynchrone permet au navigateur de ne pas bloquer les actions de l'utilisateur en attendant la réponse du serveur. Ainsi, une fonction de type callback est enregistrée pour permettre son appel à la réception de la réponse http. Côté serveur, toute technologie permettant de répondre à une requête http peut être utilisée avec Ajax. J2EE et plus particulièrement les servlets se prêtent particulièrement bien à ces traitements. La requête http est traitée comme toutes requêtes de ce type. En fonction des paramètres reçus de la requête, des traitements sont exécutés pour générer la réponse http. 41
36 Architecture technique d Ajax A la réception de la réponse par le client, la fonction de type callback est appelée. Elle se charge d'extraire les données de la réponse et réaliser les traitements de mise à jour de la page web en manipulant son arbre DOM. 42
37 Ajax et DHTML Dynamic HTML est aussi un ensemble de techniques, qui comprend: HTML ; CSS ; JavaScript ; DHTML permet de modifier le contenu d'une page selon les commandes de l'utilisateur, à partir de données préalablement fournies ou avec un texte tapé par l'utilisateur ; Ajax permet en plus de communiquer avec le serveur. C'est DHTML plus l'objet XmlHttpRequest. 43
38 XmlHttpRequest Ajax utilise un modèle de programmation comprenant d'une part la présentation et d'autre part les évènements Les évènements sont les actions de l'utilisateur, qui provoquent l'appel des fonctions associées aux éléments de la page L'interaction avec l'utilisateur se fait à partir des formulaires ou boutons html. Ces fonctions JavaScript identifient les éléments de la page grâce au DOM et communiquent avec le serveur par l'objet XMLHttpRequest. Pour recueillir des informations sur le serveur. Cet objet dispose de deux méthodes : open: établit une connexion send: envoie une requête au serveur Les données fournies par le serveur seront récupérées dans les champs responsexml ou responsetext de l'objet XMLHttpRequest. S'il s'agit d'un fichier xml, il sera lisible dans responsexml par les méthodes de DOM 44
39 XmlHttpRequest Il faut créer un nouvel objet XMLHttpRequest, pour chaque fichier que vous voulez charger. Il faut attendre la disponibilité des données, et l'état est donné par l'attribut readystate de XMLHttpRequest. 0: non initialisé. 1: connexion établie. 2: requête reçue. 3: réponse en cours. 4: terminé. 45
40 XmlHttpRequest L objet XMLHttpRequest permet d'interagir avec le serveur grace à ses méthodes et ses attributs : Les attributs : readystate status responsetext responsexml onreadystatechange statustext L'état de la requête : 0 = uninitialized, 1 = loading, 2 = loaded, 3 = interactive, 4 = complete Le code retour http de la réponse (200 est ok 404 si la page n'est pas trouvée) contient les données chargées dans une chaîne de caractères. contient les données chargées sous forme xml, les méthodes de DOM servent à les extraire. Précise la fonction de type callback qui est appelée lorsque la valeur de la propriété readystate change La description du code retour http de la réponse 46
41 XmlHttpRequest Les méthodes : open(mode, url, boolean) send("chaine") abort() getallresponseheaders() getresponseheader(nom) settimeouts(duree) setrequestheader(nom, valeur) mode: type de requête, GET ou POST url: l'endroit ou trouver les données, un fichier avec son chemin sur le disque. boolean: true (asynchrone) / false (synchrone). en option on peut ajouter un login et un mot de passe. null pour une commande GET Abandon de la requête Renvoie une chaîne contenant les en-têtes http de la réponse Renvoie la valeur de l'en-tête dont le nom est fourni en paramètre Précise la durée maximale pour l'obtention de la réponse Précise la valeur de l'en-tête dont le nom est fournie en paramètre 47
42 Construire une requête, pas à pas Première étape: créer une instance C'est une instance de classe classique mais deux options à essayer pour compatibilité avec les navigateurs : ou plus simplement, on peut utiliser les exceptions : 48
43 Construire une requête, pas à pas Seconde étape: attendre la réponse Le traitement de la réponse et les traitements qui suivent sont inclus dans une fonction, et la valeur de retour de cette fonction sera assignée à l'attribut onreadystatechange de l'objet précédemment créé : Troisième étape: faire la requête elle-même Deux méthodes de XMLHttpRequest sont utilisées: - open: commande GET ou POST, URL du document, true pour asynchrone. - send: avec POST seulement, données à envoyer au serveur. La requête ci-dessous lit un document sur le serveur. 49
44 Comment faire un site Ajax Utiliser les Frameworks existants comme DWR, DoJo ; Développer des fonctions javascript dans vos pages WEB pour envoyer des requêtes au serveur pour obtenir un fichier ; Utiliser les méthodes de DOM pour l exploitation du résultat envoyé par le serveur. 50
45 Inconvénients d Ajax AJAX possède cependant quelques inconvénients : Complexité liée à l'utilisation de plusieurs technologies côté client et serveur Utilisation de Javascript : elle implique la prise en compte des inconvénients de cette technologie : difficulté pour déboguer, différences d'implémentation selon le navigateur, code source visible,... AJAX ne peut être utilisé qu'avec des navigateurs possédant une implémentation de l'objet XMLHttpRequest L'objet XMLHttpRequest n'est pas standardisé ce qui nécessite des traitements javascript dépendant du navigateur utilisé Le changement du mode de fonctionnement des applications web (par exemple : impossible de faire un favori vers une page dans un certain état, le bouton back ne permet plus de réafficher la page dans son état précédent la dernière action,...) Ajax augmentent le nombre de requêtes http à traiter par le serveur. 51
46 TP AJAX Voir TP1 et TP 2 52
47 Plan Rappel JAVASCRIPT 53
48 JavaScript: Introduction On doit noter quelques particularités: JavaScript est sensible à la casse. Les primitives et objets de base sont: Boolean, Number, String, Array, Object, function, undefined, Infinity, NaN. Une fonction est un objet. On peut imbriquer une fonction dans une autre. 54
49 JavaScript: variables dynamiques Les variables n'ont pas un type défini lors de la déclaration. Une variable est déclarée dans un scope, local ou global avec le mot-clé var ou juste un assignement: var x = 1; y = 2; Si on la déclare dans une fonction sans le mot-clé var, elle a le scope global et non interne à la fonction. 55
50 JavaScript : les tableaux Les tableaux ont un attribut, la taille (length), et quelques méthodes Le tableau peut être déclaré selon différents moyens: arr = new Array(1000); // tableau avec une taille de arr = new Array(1,2,3); // tableau comprenant trois éléments. arr = [1,2, 3]; // le même tableau déclaré en assignant un litéral. Un tableau associatif se déclare en assignant une liste de couples clé-valeur: arr = { "un": 1, "deux": 2, "trois": 3 } Pour indicer un tableau, il y à deux syntaxes: arr[x] arr["x"] On ajoute des éléments en fin de tableau avec la méthode push. arr.push("x"); // retourne l'élément à la position x //retourne la valeur associée à la clé "x" qui est une chaîne 56
51 JavaScript : les structure de controle Les structures de contrôle sont celles de C Ces structures sont identiques à celles du langage C avec une addition: if else for while do.. while switch case break et continue 57
52 JavaScript : les fonctions Les fonctions peuvent être des objets Une déclaration de fonction débute par le mot clé function. function nomfonct(arguments) {...instructions... return x; } On peut assigner une fonction à une variable: var x = function(arguments) {...instructions... } Cela permet notamment d'associer un traitement à un évènement. L'instruction return retourne une valeur. Tous les arguments sauf les objets sont passés par valeur. 58
53 JavaScript : les Objets En JavaScript, les objets sont similaires aux tableaux associatifs. les clés sont les noms d'attributs et les valeurs leurs valeurs initiales obj1 = { 'type' : "integer", "nom" : "Objet X", taille : 11,... } x = obj1["nom"] // ceci assigne la chaîne 'Objet X' à l'attribut x Les objets sont dynamiques, des attributs peuvent être ajoutés dynamiquement. On peut démarrer avec un objet vide et ajouter attributs et méthodes ensuite: obj1 = {} obj1.mafonc = function() { } La structure des objets est récursive, la valeur d'un attribut peut être un autre objet. 59
54 JavaScript : les Objets On crée une classe en déclarant un constructeur Les classes sont simulées en JavaScript par le moyen des constructeurs, et un constructeur est une fonction. Le mot-clé this identifie les variables d'une fonction comme attributs de la classe function ClassA(x, y) { this.propertyx = x; this.propertyy = y; } obj1 = new ClassA(12, 34); // instance obj1.propertyx = z; obj1.properyz = z; // ajout dynamique d'un nouvel attribut à l'instance. On peut créer une classe vide et définir tous les attributs de cette façon 60
55 JavaScript : les Objets Un attribut peut être effacé par la commande delete, ce qui complète l'aspect dynamique des objets en JavaScript. delete obj1.propertyy; Les méthodes sont des fonctions dans les fonctions On peut définir des fonctions à l'intérieur de fonctions et cela fournit des méthodes aux objets. function ClassA { this.methoda = function(x, y) {...body... } } ;. 61
56 Plan DOM 62
57 DOM : Introduction Dans le cadre d'une page Web, la finalité de JavaScript est essentiellement de modifier les informations affichées. Pour cela, il est nécessaire de les récupérer puis les manipuler. DOM ou Document Object Model aux programmes et scripts d'accéder et de modifier dynamiquement le contenu, la structure et le style de documents XML ou HTML Le programmeur dispose d'objets, qui ont des propriétés, des méthodes et des évènements qui interfacent le document XML ou HTML. En résumé DOM est composé : Un ensemble d'objets, un modèle pour la façon dont ces objets peuvent être combinés, et une interface pour accéder et manipuler les objets 63
58 DOM : Objet et méthodes L'objet Document Document est un objet DOM correspondant à la page en cours. Toutefois certaines balises comme <iframe>, <browser> et <tabbrowser> peuvent introduire de nouveaux documents. Les propriétés de l'objet document document.head : représente la balisehtml <head>. document.body: représente la balise HTML <body>. document.embeds : représente tous les éléments correspondants aux balises HTML <embed>. document.forms: représente tous les formulaires du document. document.images : représente toutes les images du document (balises HTML <img /> uniquement). document.links: représente tous les liens hypertexte du document (balises HTML <area> et <a> ayant un attribut href). 64
59 DOM : Objet et méthodes Les méthodes de l'objet document Il est aussi possible de récupérer des éléments ou des collections à partir soit de l'objet document,. getelementbyid(id) : récupère l'élément dont l'identifiant vaut la valeur passée en paramètre. Cette méthode ne renvoie qu'un élément car un id doit être unique dans le document. Ne s'applique qu'à l'objet document. getelementsbyname(name) : récupère tous les éléments du document ayant un attribut HTML name correspondant au paramètre passé. getelementsbytagname(name) : récupère tous les éléments du document dont le nom de balise correspond au paramètre passé. getelementsbyclassname(classe) : récupère tous les éléments du document ayant un attribut HTML class correspondant au paramètre passé. 65
60 Plan DWR 66
61 DWR: principe de fonctionnement DWR (Direct Web Remoting) est une bibliothèque open source Java dont le but est de faciliter la mise en œuvre d'ajax dans les applications Java. DWR se charge de générer le code Javascript permettant l'appel à des objets Java de type bean qu'il suffit d'écrire. La devise de DWR est "Easy Ajax for Java". DWR encapsule les interactions entre le code Javascript côté client et les objets Java côté serveur : ceci rend transparent l'appel de ces objets côté client. Le site officiel de DWR est à l'url : ou 67
62 DWR: principe de fonctionnement La mise en œuvre de DWR côté serveur est facile : o Ajouter le fichier dwr.jar au classpath de l'application o Configurer une servlet dédiée aux traitements des requêtes dans le fichier web.xml o Ecrire les beans qui seront utilisés dans les pages o Définir ces beans dans un fichier de configuration de DWR La mise en œuvre côté client nécessite d'inclure des bibliothèques JavaScript générées dynamiquement par la servlet de DWR. Il est alors possible d'utiliser les fonctions JavaScript générées pour appeler les méthodes des beans configurés côté serveur. 68
63 DWR : principe de fonctionnement DWR s'intègre facilement dans une application web puisqu'il repose sur une servlet et plus particulièrement avec celles mettant en œuvre le Framework Spring dont elle propose un support. DWR est aussi inclus dans le Framework WebWork depuis sa version 2.2. DWR fournit aussi une bibliothèque JavaScript proposant des fonctions de manipulations courantes en DHTML :modifier le contenu des conteneurs <DIV> ou <SPAN>, remplir une liste déroulante avec des valeurs, etc... DWR est une solution qui encapsule l'appel de méthodes de simples objets de type Java Bean exécutés sur le serveur dans du code JavaScript généré dynamiquement. Le grand intérêt est de masquer toute la complexité de l'utilisation de l'objet XMLHttpRequest et de simplifier à l'extrême le code à développer côté serveur. DWR se compose de deux parties : o Du code JavaScript qui envoie des requêtes à la servlet et met à jour la page à partir des données de la réponse o Une servlet qui traite les requêtes reçues et renvoie une réponse au navigateur 69
64 DWR : principe de fonctionnement Côté serveur, une servlet est déployée dans l'application web. Cette servlet a deux rôles principaux : 1. Elle permet de générer dynamiquement des bibliothèques de code Javascript. Une bibliothèque de code est générée pour chaque bean défini dans la configuration de DWR 2. Elle permet de traiter les requêtes émises par le code Javascript générés pour appeler la méthode d'un bean Une fonction de type callback est précisée à DWR pour être exécutée par un bean à la réception de la réponse à la requête. DWR facilite donc la mise en œuvre d'ajax avec Java côté serveur : il se charge de toute l'intégration de Javabeans côté serveur pour permettre leur appel côté client de manière transparente. 70
65 DWR : principe de fonctionnement DWR possède quelques restrictions : 1. Il ne faut pas utiliser de nom de méthode dans les beans exposés correspondant à des mots réservés en Javascript. Un exemple courant est le mot delete ; 2. Il faut éviter l'utilisation de méthodes surchargées Par défaut, DWR encapsule toutes les méthodes public de la classe définie. Il est donc nécessaire de limiter les méthodes utilisables via DWR à celles requises par les besoins de l'application soit dans la définition des membres de la classe soit dans le fichier de configuration de DWR. 71
66 DWR : étapes de mise en œuvre Coté serveur 1. Il faut ajouter le fichier dwr.jar dans le répertoire WEB-INF/Lib de l'application web qui va utiliser la bibliothèque. 2. Il faut ensuite déclarer dans le fichier de déploiement de l'application web.xml la servlet qui sera utilisée par DWR. Il faut déclarer la servlet et définir son mapping : <servlet> <display-name> DWR Servlet</display-name> <servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.dwrservlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> 72
67 DWR : étapes de mise en œuvre 3. Il faut créer un fichier de configuration pour DWR nommé dwr.xml dans le répertoire WEB-INF de l'application (Ce fichier permet de déclarer à DWR la liste des beans qu'il devra encapsuler pour des appels en JavaScript) <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN". " <dwr> <allow> <create creator="new" javascript="jdate"> <param name="class" value="java.util.date"/> </create> </allow> </dwr> 73
68 DWR: fichier DWR Exemple Fichier DWR.xml Le fichier dwr.xml permet de configurer DWR. Il est généralement placé dans le répertoire WEB-INF de l'application web exécutant DWR. Le tag <allow> permet de définir les objets qui seront utilisés par DWR. L'attribut javascript permet de donner le nom de l'objet Javascript. Il ne faut pas utiliser comme valeur un mot réservé de JavaScript. Le tag <create> permet de préciser la façon dont un objet va être instancié. Chaque classe qui pourra être appelée via DWR doit être déclarée avec un tel tag. 74
69 DWR : étapes de mise en œuvre 4. Il suffit alors de lancer l'application et d'ouvrir un navigateur sur l'url de l'application et d'ajouter /dwr Cette page liste tous les beans qui sont encapsulés par DWR. Il suffit de cliquer sur le lien d'un bean pour voir afficher une page de test de ce bean. Cette page génère dynamiquement une liste de toutes les méthodes pouvant être appelées en utilisant DWR. 75
70 DWR : étapes de mise en œuvre Le mode debug proposé par DWR est particulièrement utile lors de la phase de développement pour vérifier toutes les méthodes qui sont prises en compte par DWR et les tester. Il est cependant fortement déconseillé de le laisser dans un contexte de production pour des raisons de sécurité. 76
71 DWR: étapes de mise en œuvre Coté client 1. Pour permettre l'utilisation des scripts générés, il suffit de faire un copier/coller dans la partie en-tête de la page HTML des tags <SCRIPT> proposés dans la page de tests de DWR. <head> <script type='text/javascript' src='/[nom_projet]/dwr/interface/jdate.js'></script> <script type='text/javascript' src='/[nom_projet]/dwr/engine.js'></script> <script type='text/javascript' src='/[nom_projet]/dwr/util.js'></script> </head> 2. Les scripts client générés DWR assure un mapping entre les méthodes des objets Java et les fonctions JavaScript générées. Chaque objet Java est mappé sur un objet JavaScript dont le nom correspond à la valeur de l'attribut javascript du creator correspondant dans le fichier de configuration de DWR. Le nom des méthodes est conservé comme nom de fonction dans le code JavaScript. Le dernier paramètre de toutes les fonctions générées par DWR est la fonction de type callback qui sera exécutée à la réception de la réponse. 77
72 DWR : engine.js Engine.js <script type='text/javascript' src='/[nom_projet]/dwr/engine.js'></script> Le fichier engine.js est la partie principale côté Javascript puisqu'il assure toute la gestion de la communication avec le serveur. Certaines options de paramétrage peuvent être configurées en utilisant la fonction DWREngine.setX(). Il est possible de regrouper plusieurs communications en une seule en utilisant les fonctions DWREngine.beginBatch() et DWREngine.endBatch(). Lors de l'appel de cette dernière, les appels sont réalisés vers le serveur. Ce regroupement permet de réduire le nombre d'objets XMLHttpRequest créés et le nombre de requêtes envoyées au serveur.. 78
73 DWR : util.js Util.js Le fichier util.js propose des fonctions utilitaires pour faciliter la mise à jour dynamique de la page. Ces fonctions sont indépendantes d'autres éléments de DWR. 79
74 DWR Voir TP 80
75 Plan DoJo 81
76 Qu'est-ce que le Dojo Toolkit? Ensemble Open Source de librairies JavaScript Simplifie le code javascript Appartient à Google aujourd'hui (qui a racheté Jot) Supporté par > IBM, Sun, JotSpot, SitePen, Renkoo, AOL TurboAjax, OpenLaszlo, Nexaweb, Bea Systems Indépendant de la techologie serveur et des langages utilisés (java, c#, python, ruby...)
77 Les libraries Dojo
78 Dojo 3 parties : Dojo dijit > Support cross-browser, chargement des packages, accès et manipulation du DOM, debugger Firebug Lite, évènements, composants MVC, Drag and drop, appels Ajax asynchrones, encodage, décodage JSON > Widgets, Contrôles avancés d'interface utilisateur,système de template dojox > innovations: graphiques, support du mode offline, widgets évolués comme les tableaux (grid), etc
79 Intégrer dojo à une application 1) L'application télécharge des morceaux de Dojo depuis le net : <SCRIPT TYPE="text/javascript" SRC= xd.js"> </SCRIPT> La balise script est utilisée pour charger le script dojo.js, toujours obligatoire.
80 Intégrer dojo à une application 2) Ajouter Dojo dans son application (il sera déployé avec l'application) Downloader depuis Unzipper le fichier à côté des pages web ou jsp du projet. Inclure dojo comme ceci dans les pages qui l'utilisent <script type="text/javascript" djconfig="parseonload: true" src="dojo-release-1.3.2/dojo/dojo.js"> </script> Pas de / ici! Le système de chargement des packages chargera toutes les dépendances s'il y en a!
81 Dojo dans son application Ici dojo a été mis sous le répertoire js (classique lorsque on utilise plusieurs frameworks), dans le répertoire qui contient les pages web ou jsp (le repertoire web du projet netbeans par exemple)
82 Intégrer dojo à une application 3) Installer une fois pour toute Dojo sur le serveur (recommandé) Que ce soit Tomcat ou Glassfish, dézipper Dojo dans le docroot du serveur, par exemple > C:\Sun\AppServer\domains\domain1\docroot\dojo-release > C:\Program Files\Apache Software Foundation\Apache Tomcat \webapps\ROOT\dojo-release Et l'inclure dans l'application : <script type="text/javascript" djconfig="parseonload: true" src= /dojo-release-1.3.2/dojo/dojo.js"> </script> / obligatoire ici, l inverse de ce qu on a vu précédemment!
83 Intégrer dojo à une application Dojo contient plusieurs Démonstrations Par exemple : themetester.html
84 dojo et Ajax Appels Ajax : XMLHttpRequest (XHR): dojo.xhrget(), dojo.xhrpost(),
85 Envoie de requête, récupérer la réponse d'un serveur <script type="text/javascript"> </script> Appeler un url Fonction de callback dojo.xhrget({ url: 'sayhello', En cas d'erreur, on appelle load: hellocallback, cette fonction. error: helloerror, content: {name: dojo.byid('name').value } }); Contenu à envoyer
86 dojo.xhrpost pour envoyer un formulaire <head> <script type="text/javascript"> function makeajaxcall(){ dojo.xhrpost({ xhrpost url: 'sayhello', load: hellocallback, error: helloerror, form: 'myform' }); Formulaire } function hellocallback(data,ioargs) { dojo.byid("returnmsg").innerhtml = data; } </script> </head> <body> <form id="myform" method="post"> Name: <input type="text" name="name"> </form> <button dojotype="dijit.form.button" <script type="dojo/method" event="onclick"> makeajaxcall(); <p id=returnmsg></p> </body>
87 DoJo Voir TP 93
Petite définition : Présentation :
Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise
Plus en détailLangage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>
Langage HTML (2 partie) «Je n'ai fait que prendre le principe d - hypertexte et le relier au principe du TCP et du DNS et alors boum! ce fut le World Wide Web!» Tim Berners-Lee
Plus en détailDOM - Document Object Model
DOM - Document Object Model 1 But de DOM Interfacer les langages de programmation avec les documents XML en les associant avec un modèle orienté objet DOM permet aux programmes et scripts : d'accéder et
Plus en détailServeur d'application Client HTML/JS. Apache Thrift Bootcamp
Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailTP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.
ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture
Plus en détailNFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web
NFA016 : Introduction O. Pons, S. Rosmorduc Conservatoire National des Arts & Métiers Pour naviguer sur le Web, il faut : 1. Une connexion au réseau Réseau Connexion physique (câbles,sans fils, ) à des
Plus en détailTP JAVASCRIPT OMI4 TP5 SRC1 2011-2012
TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE
Plus en détailModule BD et sites WEB
Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD
Plus en détailINTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)
CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.
Plus en détailWEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES
WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,
Plus en détailLes sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org
Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et
Plus en détailDevenez un véritable développeur web en 3 mois!
Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web
Plus en détail4. SERVICES WEB REST 46
4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,
Plus en détailModule http MMS AllMySMS.com Manuel d intégration
Module http MMS AllMySMS.com Manuel d intégration Objectif du document... 3 1 Envoi de MMS par requête http... 4 1.1 Format de la requête utilisée... 4 1.2 Arborescence et explication des balises du flux
Plus en détailSYSTÈMES D INFORMATIONS
SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.
Plus en détailMagento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s
Mickaël Mickaël BLANCHARD BLANCHARD Préface de Sébastien L e p e r s Magento Préface de Sébastien L e p e r s Magento Réussir son site e-commerce Réussir son site e-commerce Groupe Eyrolles, 2010, ISBN
Plus en détailFailles XSS : Principes, Catégories Démonstrations, Contre mesures
HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Séminaire 15 ans HSC Failles XSS : Principes, Catégories Démonstrations,
Plus en détailAjax, RIA et HTML5. 9.1 Prise en charge d Ajax
9 Ajax, RIA et HTML5 Au soaire de ce chapitre UU Prise en charge d Ajax UU Bibliothèques JavaScript UU Extensions CSS de WebKit UU Applications Internet riches mobiles UU HTML5 Ajax, HTML5 et RIA, coent
Plus en détailAutour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech
Autour du web Une introduction technique Première partie : HTML Georges-André SILBER Centre de recherche en informatique MINES ParisTech silber@cri.ensmp.fr http://www.cri.ensmp.fr/people/silber/cours/2010/web
Plus en détailJoomla! Création et administration d'un site web - Version numérique
Avant-propos 1. Objectifs du livre 15 1.1 Orientation 15 1.2 À qui s adresse ce livre? 16 2. Contenu de l ouvrage 17 3. Conclusion 18 Introduction 1. Un peu d histoire pour commencer... 19 1.1 Du web statique
Plus en détailFormation : WEbMaster
Formation : WEbMaster Objectif et Description : Centre Eclipse vous propose une formation complète WebMaster, vous permettant de : Utiliser dès maintenant les nouveautés du web2, ainsi alléger les besoins
Plus en détailProgrammation Internet Cours 4
Programmation Internet Cours 4 Kim Nguy ên http://www.lri.fr/~kn 17 octobre 2011 1 / 23 Plan 1. Système d exploitation 2. Réseau et Internet 3. Web 3.1 Internet et ses services 3.1 Fonctionnement du Web
Plus en détailAvant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4
Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.
Plus en détailContent Management System V.3.0. BlackOffice CMS V3.0 by ultranoir 1
Content Management System V.3.0 BlackOffice CMS V3.0 by ultranoir 1 SOMMAIRE Introduction Grands principes de fonctionnement Description des modules Références principales BlackOffice CMS V3.0 by ultranoir
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détailFORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères
FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailInstallation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6
Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer
Plus en détailCRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING
CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN E-MAILING Durée : 3J / 21H Formateur : Consultant expert en PAO et Web-marketing. Groupe de : 4 max Formation au web marketing Objectifs : Mettre en oeuvre des
Plus en détailGuide d implémentation. Réussir l intégration de Systempay
Guide d implémentation - Interface avec la plateforme de paiement - Réussir l intégration de Systempay Version 1.4b Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa
Plus en détailMise en œuvre des serveurs d application
Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés
Plus en détailPack Fifty+ Normes Techniques 2013
Pack Fifty+ Normes Techniques 2013 Nos formats publicitaires par site 2 Normes techniques 2013 Display classique Pavé vidéo Footer Accueil panoramique Publi rédactionnel Quiz Jeu concours Emailing dédié
Plus en détailles techniques d'extraction, les formulaires et intégration dans un site WEB
les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents
Plus en détailMessagerie asynchrone et Services Web
Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS
Plus en détailPrésentation du Framework BootstrapTwitter
COUARD Kévin HELVIG-LARBRET Blandine Présentation du Framework BootstrapTwitter IUT Nice-Sophia LP-SIL IDSE Octobre 2012 Sommaire I. INTRODUCTION... 3 Définition d'un framework... 3 A propos de BootstrapTwitter...
Plus en détailApplication Web et J2EE
Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis
Plus en détailArchitecture Orientée Service, JSON et API REST
UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API
Plus en détailProgrammation Web. Introduction
Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)
Plus en détailLes services usuels de l Internet
Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet Courrier électronique (mail) - protocole SMTP (Simple Mail Transfer Protocol) inclut maintenant tous types
Plus en détailSIO-65291 Page 1 de 5. Applications Web dynamiques. Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault
SIO-65291 Page 1 de 5 1- Objectifs généraux Applications Web dynamiques Prof. : Dzenan Ridjanovic Assistant : Vincent Dussault acquérir les principes et concepts fondamentaux dans le domaine d'applications
Plus en détailDans nos locaux au 98 Route de Sauve 30900 NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur
FORMATION FORFAIT WEB DEVELOPPEUR Qualification ISQ OPQF Formacode 46 125 Certification de titre professionnel Web Designer + modules optionnels : Développement PHP/MySQL avancé, Web App, CMS e-boutique
Plus en détailIntroduction aux concepts d ez Publish
Introduction aux concepts d ez Publish Tutoriel rédigé par Bergfrid Skaara. Traduit de l Anglais par Benjamin Lemoine Mercredi 30 Janvier 2008 Sommaire Concepts d ez Publish... 3 Système de Gestion de
Plus en détailLe stockage local de données en HTML5
Le stockage local HTML5, pourquoi faire? Dans une optique de réduction des couts de maintenance, de déploiement, beaucoup d'entreprises ont fait le choix de migrer leurs applicatifs (comptables, commerciales,
Plus en détailLANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation
ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailDocument Object Model (DOM)
Document Object Model (DOM) Jean-Claude Charr Maître de conférences IUT de Belfort Montbéliard Université de Franche Comté Description générale Définit un standard pour accéder aux documents structurés
Plus en détailProjet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :
CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i
Plus en détailPHP 5.4 Développez un site web dynamique et interactif
Editions ENI PHP 5.4 Développez un site web dynamique et interactif Collection Ressources Informatiques Table des matières Table des matières 1 Chapitre 1 Introduction 1. Objectif de l'ouvrage.............................................
Plus en détailXML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million
XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................
Plus en détail1.2 - Définition Web 2.0 ( wikipedia )
1.2 - Définition Web 2.0 ( wikipedia ) Web 2.0 est un terme souvent utilisé pour désigner ce qui est perçu comme une transition importante du World Wide Web, passant d'une collection de sites web à une
Plus en détailGoogle Tag Manager. «Vous ne verrez plus l'analytics de la même manière» par Ronan CHARDONNEAU
Google Tag Manager «Vous ne verrez plus l'analytics de la même manière» par Ronan CHARDONNEAU Au menu 1)Définition de Google Tag Manager 2)Le fonctionnement 3)Applications pratiques pour un référenceur
Plus en détailAJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada
AJAX (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre
Plus en détailCompte Rendu d intégration d application
ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailLes solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC. Qui contacter pour commencer la mise en place d une configuration de test?
Les solutions de paiement CyberMUT (Crédit Mutuel) et P@iement CIC Qui contacter pour commencer la mise en place d une configuration de test? CyberMUT Paiement - Paiement CIC Commerce Electronique mailto:centrecom@e-i.com
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailLes outils de création de sites web
Tuto 1ère séance - p1 Les outils de création de sites web Sources : Réalisez votre site web avec HTML5 et CSS3 de Mathieu Nebra (Edition Le Livre du Zéro) site fr.openclassrooms.com (anciennement «site
Plus en détailBonnes pratiques de développement JavaScript
Bonnes pratiques de développement JavaScript Titre présentation Conférencier François Béliveau Romain Dorgueil A propos de nous... François Béliveau Développeur web depuis 8 ans Utilise symfony depuis
Plus en détailBES WEBDEVELOPER ACTIVITÉ RÔLE
BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et
Plus en détailOptimiser les e-mails marketing Les points essentiels
Optimiser les e-mails marketing Les points essentiels Sommaire Une des clés de succès d un email marketing est la façon dont il est créé puis intégré en HTML, de telle sorte qu il puisse être routé correctement
Plus en détailLE CONCEPT DU CMS CHAPITRE 1
CHAPITRE 1 LE CONCEPT DU CMS Techniques traditionnelles de construction de sites... 14 Les principes des CMS... 18 Le langage HTML... 26 Check-list... 41 11 Même s il est d usage de comparer Internet
Plus en détail3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures
3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures Objectif global : A l issue de la formation, les stagiaires doivent être opérationnels dans la création d un site internet
Plus en détailHTML, CSS, JS et CGI. Elanore Elessar Dimar
HTML, CSS, JS et CGI Elanore Elessar Dimar Viamen GPAs Formation, 13 avril 2006 Sommaire Qu est-ce que HTML? HTML : HyperText Marckup Language XML : extensible Marckup Language Qu est-ce que HTML? HTML
Plus en détailBien architecturer une application REST
Olivier Gutknecht Bien architecturer une application REST Avec la contribution de Jean Zundel Ce livre traite exactement du sujet suivant : comment faire pour que les services web et les programmes qui
Plus en détailProjet en nouvelles technologies de l information et de la communication
Projet en nouvelles technologies de l information et de la communication Site Web universitaire du Prof. Jacques Moeschler. Nono Steeve Semestre de printemps 2013 Sous la direction du Prof Luka Nerima
Plus en détailcreer votre site internet en html/css
3 jours (21 heures) 1110 HT (Inter) 2670 HT (Intra) Toute personne (particulier ou professionnel) souhaitant créer son site Internet Créez son site Internet Assurez sa mise en ligne Gérer les mises à jour
Plus en détailSII Stage d informatique pour l ingénieur
SII Stage d informatique pour l ingénieur Création d un site Web École nationale supérieure de techniques avancées SII Stage d informatique pour l ingénieur 1 / 15 L informatique et le temps qui passe...
Plus en détailEvolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.
Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS IDS2014, Nailloux 26-28/05/2014 pascal.dayre@enseeiht.fr 1 MVC et le web 27/05/14 2 L'évolution des systèmes informatiques
Plus en détailInternet. DNS World Wide Web. Divers. Mécanismes de base Exécution d'applications sur le web. Proxy, fire-wall
Internet DNS World Wide Web Mécanismes de base Exécution d'applications sur le web Divers Proxy, fire-wall 1 Les services usuels de l Internet Services principaux (applications) disponibles sur l Internet
Plus en détailNormes techniques 2011
Normes techniques 2011 Display classique Formats Livrables Footer p 2 p 3 p 4 Opérations spéciales Publi-rédactionnel Jeu concours Quiz Lien partenaire Habillage Accueil panoramique Sponsoring de rubrique
Plus en détailXML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)
Présentation du langage XML 1. De SGML à XML 17 2. Les bases de XML 18 2.1 Rappel sur HTML 18 2.2 Votre premier document XML 19 2.3 Les avantages de XML 21 3. La syntaxe XML 21 3.1 La première ligne du
Plus en détail< Atelier 1 /> Démarrer une application web
MES ANNOTATIONS SONT EN ROUGE : Axel < Atelier 1 /> Démarrer une application web Microsoft France Tutorial Découverte de ASP.NET 2.0 Sommaire 1 INTRODUCTION... 3 1.1 CONTEXTE FONCTIONNEL... 3 1.2 CONTEXTE
Plus en détailCréer et animer une boutique en ligne avec Wordpress (environnement PC et MAC)
Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC) OBJECTIFS - Créer une boutique sous wordpress et la référencer. - Mise en place du contenu, des articles Une bonne connaissance
Plus en détailTechnologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie
1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser
Plus en détailFormation Website Watcher
Formation Website Watcher Page 1 Comprendre le fonctionnement du Web Glossaire Structure du Web et protocoles Langages webs et veille Page 2 Comprendre le fonctionnement du Web Glossaire Page 3 Nom de
Plus en détailPaiement sécurisé sur Internet
Paiement sécurisé sur Internet Présentation Générale Présentation générale - Page 1 / 19 SOMMAIRE 1 Présentation 3 1.1 Principe 4 1.2 Vendre à l international 4 1.3 Description de la phase paiement 5 1.4
Plus en détail10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]
10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une
Plus en détailActivité sur Meteor. Annexe 1 : notion de client-serveur et notion de base de données
Activité sur Meteor Annexe 1 : notion de client-serveur et notion de base de données Notion de client-serveur Que se passe-t-il lorsque vous tapez dans la barre d'adresse de votre navigateur «http://www.google.fr»?
Plus en détailLa base de données XML exist. A. Belaïd
La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques
Plus en détailLivre Blanc WebSphere Transcoding Publisher
Livre Blanc WebSphere Transcoding Publisher Introduction WebSphere Transcoding Publisher vous permet d'offrir aux utilisateurs des informations Web adaptées à leurs besoins. Il vous permet, par exemple,
Plus en détailModules du DUT Informatique proposés pour des DCCE en 2014/2015
Modules du DUT Informatique proposés pour des DCCE en 2014/2015 Résumé de l offre : Parmi les 5500 heures d enseignement informatique dispensées au département informatique de l IUT (avec 2880 heures de
Plus en détailGoogle Tag Manager. Optimisez le tracking de votre site web. Google Tag Manager. Google Tag Manager. Optimisez le tracking de votre site web 26,50
Google Tag Manager Optimisez le tracking de votre site web Le chapitre 6 regroupe des outils ainsi que des ressources documentaires vous permettant d aller plus loin dans l utilisation de Google Tag Manager.
Plus en détailHTML. Notions générales
1 HTML Le langage HTML est le langage de base permettant de construire des pages web, que celles-ci soient destinées à être affichées sur un iphone/android ou non. Dans notre cas, HTML sera associé à CSS
Plus en détailCours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»
Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une
Plus en détailApplications et Services WEB: Architecture REST
Applications et : Erick Stattner Laboratoire LAMIA Université des Antilles et de la Guyane France erick.stattner@univ-ag.fr Guadeloupe 2014-2015 Erick Stattner Applications et : 1 / 90 Description du cours
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailArchitectures web/bases de données
Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est
Plus en détailPlateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.
Plateforme PAYZEN Intégration du module de paiement pour la plateforme Magento version 1.3.x.x Paiement en plusieurs fois Version 1.4a Guide d intégration du module de paiement Multiple Magento 1/24 SUIVI,
Plus en détail1 / Introduction. 2 / Gestion des comptes cpanel. Guide débuter avec WHM. 2.1Créer un package. 2.2Créer un compte cpanel
Guide débuter avec WHM 1 / Introduction WHM signifie Web Host Manager (ou gestionnaire d'hébergement web). WHM va donc vous permettre de gérer des comptes d'hébergement pour vos clients. (création de compte,
Plus en détailTP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet
TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur
Plus en détailSommaire. -1-Computer en bref. Web en bref. Le web 3.0,...la mobilité. Evolution du Web... ... web1.0, web2.0, web2.b, web3.0...
Evolution du Web... Le web 3.0,...la mobilité... web1.0, web2.0, web2.b, web3.0... Raoul Mengis, -1-Computer Stéphane Gay, -1-Computer Stéphane Micheloud, EPFL Lausanne http://www.1info.com/4w3.html [en]
Plus en détailDévelopper des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David
Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server Sébastien Boutard Thomas David Le plan de la présentation Petit retour sur les environnements de développement ArcGIS Server
Plus en détailPublication dans le Back Office
Site Web de l association des ingénieurs INSA de Lyon Publication dans le Back Office Note : dans ce guide, l'appellation GI signifie Groupe d'intérêt, et GR Groupe Régional laure Buisset Page 1 17/09/2008
Plus en détailHébergement de site web Damien Nouvel
Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture
Plus en détailLe Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan
Le Web de Données Dan VODISLAV Université de Cergy-Pontoise Master Informatique M2 Plan RDF sur le Web Micro-formats Micro-données RDFa Vocabulaires communs Dublin Core, FOAF, SKOS Linked Open Data Architecture
Plus en détailLes grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully
Les grandes facettes du développement Web Qui sommes nous? Nicolas Thouvenin Stéphane Gully Projets Web depuis 2000 LAMP, NodeJS HTML, CSS, jquery
Plus en détailSOUTENANCE ORALE RAPPORT DE PROJET D INFORMATIQUE
SOUTENANCE ORALE RAPPORT DE PROJET D INFORMATIQUE SITE INTERNET DE L ASSOCIATION Diapositive 1 RAPPORT DE PROJET Site internet de l association INTRODUCTION 1) Je m appelle Léonard STRONG. 2) Oral de présentation
Plus en détail