Application de commerce électronique Technologies J2EE

Dimension: px
Commencer à balayer dès la page:

Download "Application de commerce électronique Technologies J2EE"

Transcription

1 BARBAZAN Jean-René 2A IMA OUAHAB Karim Groupe H RIBEIRO Nicolas TUCITO David Application de commerce électronique Technologies J2EE 1

2 Sommaire Introduction I Gestion du projet 1) Planning ) Répartition des tâches... 5 II Maquette du site 1) La page principale ) La fiche produit ) La page administration... 8 II I- Mise en place technique 1) Le serveur Jboss, les EJB2 et la sécurité ) La base de données MySQL ) Utilisation d'ajax ) Utilisation de subversion ) Utilisation de xdoclet ) Présentation du modèle MVC...14 IV - Développement: niveau EJB 1) Choix d'implantation a) Les entity bean b) Le(s) session bean c) Les interfaces locales d) Les home locales e) Les value objects ) Les relations a) L'exemple de la relation 1-n b) la directionnalité des relations ) les transactions ) les finders EJB-QL ) Les descripteurs XML et la mapping de la base de données a) mappping et configuration de la base de données b) le descripteur ejb-jar.xml et le fichier application.xml...25 c) les descripteurs Jboss-web.xml et Jbosscmp-jdbc.xml

3 V - Développement: niveau Web 1) Utilisateur...26 a) Logo Zone b) Barre d'onglets Zone c) Menu Zone d) Main Zone e) Recherche Zone f) Publicité Zone g) Client Zone h) Caddie Zone ) Administration...31 a) Gestion des produits, magasins, sous-rayons et clients...31 b) Gestion des commandes...32 c) Gestion des mails...32 VI - Mise en service de l'application 1) Packaging et déploiement du serveur ) Validation du service: tests...34 VII Retour sur les technologies utilisées Conclusion

4 Introduction Le but de ce projet est le développement d'une application d'e-commerce utilisant les technologies J2EE. Une relative liberté de conception nous a été laissé afin de pouvoir découvrir nous mêmes de nouveaux outils et technologies en fonction du cahier des charges établit. L'idée de notre application est le développement d'un supermarché en ligne (comme il en existe à Paris par exemple), qui permet à un internaute de faire ses courses conventionnelles depuis chez lui, ainsi la notion de caddie, ou encore de rayon, devient très intuitive lors de la navigation sur le site. Notre application marchande avec des fournisseurs (ou encore «magasins»), qui, à l'image des supermarchés, approvisionnent nos stocks. La gestion des transactions bancaires est également effectuée par l'application (chaque client, chaque magasin, ainsi que le site en lui même, possède un compte bancaire). L'accent a été mis sur la simplicité d'utilisation du site, qui comme nous le verrons fera appel a des technologies particulières, cette volonté passe également par une exploitation maximale des nombreuses possibilités offertes par la J2EE. Spécifications Techniques: J2EE Container: Serveur JBoss GA Edition Base de données: Serveur MySQL 5.0 Authentification sécurisée par certificats SSL Cryptage des mots de passe dans la base de données par l'algorithme SHA-256 Sécurisation des transactions bancaires au niveau EJB Gestion des relations EJB Intégration d'ajax Caractéristiques du site Web: Interface complète d'administration pour ajouter et modifier des rayons/magasins/clients... Bandeau publicitaire avec effets graphiques Possibilité de glisser déposer un produit vers le caddie Possibilité de noter et de commenter chaque produit Gestion d'une Newsletter et d'un service mails Gestion en temps réel des stocks 4

5 I Gestion du projet 1) Planning Le planning est indispensable dans ce type de projet, où le cahier des charges est fourni et le temps limité, nous avons donc dès le début fixé un planning que nous nous sommes efforcé de respecter au cours du développement. Semaine 1 - Mise en place du serveur, du canevas général du site - Documentation sur les différents outils qui pourraient nous intéresser (AJAX, xdoclet, authentification...) - Description des relations et des beans qui vont devoir être développés vis à vis de notre idée. Semaine 2 - Mise en place d'un premier exemple J2EE avec un premier EJB, le but est de faire marcher un exemple simple avec les technologies que nous désirons utiliser. - Poursuite de la documentation. Semaine 3 Développement général des beans d'une part, des servlets et des JSP de l'autre. Des tests unitaires sont faits en parallèle. Semaine 4 Poursuite du travail de la semaine 3 Semaine 5 Derniers débogages, écriture du rapport et préparation de la présentation 2) Répartition des tâches Afin de gagner du temps, la répartition des tâches est cruciale, dès le départ chaque membre de l'équipe doit savoir sur quelles parties du projet il devra travailler mais devra également connaître les objectifs des autres membres de l'équipe, tout en gardant à l'esprit le planning définit. Ainsi nous avons décidé de séparé l'équipe en 2 binômes dont les travaux seraient parallèles à partir de la semaine 2 (la semaine 1 ayant été une phase de réflexion commune): Jean-René et David: Développement des servlets et des JSP (qui inclut notamment l'utilisation de AJAX, de javascript et de CSS). Karim et Nicolas: Mise en place du serveur et de la base de données, développement des beans, des descripteurs de déploiement (utilisant xdoclet), et du packaging. Bien sûr ce travail fut ponctué de réunions où les 2 binômes se réunissaient pour partager leurs avancées sur le projet, que nous synchronisions à chaque nouvelle étape grâce à notre serveur subversion. 5

6 II Maquette du site 1) La page principale Voici un rapide aperçu de la page principale du site web, détaillée dans la partiev 1), on trouve: A gauche: Une zone de recherche (qui peut être étendue en recherche avancée) Une zone pour le parcours des sous rayons d'un rayon, A droite: Une zone client où ce dernier pourra se loguer, modifier ses coordonnées ou encore retrouver un mot de passe perdu. Le caddie contenant les articles avec une image miniature et la quantité sélectionnée. En haut: une barre d'onglets pour sélectionner les rayons du magasin 6

7 2) La fiche produit On y trouve: Le nom du produit La description du produit Le prix du produit La note donnée par les clients (possibilité de notez en cliquant sur les étoiles) Les commentaires laissés par les utilisateurs (possibilité de laisser un commentaire grâce à un cadre déroulant) 7

8 3) La zone d'administration Accessible par mot de passe (crypté dans la base de données), elle permet à l'administrateur une gestion complète de son site, les différentes parties sont interchangeable à souhait (pour plus de détails, voir la partie V 2) ) On y trouve différentes zones: La zone produits La zone magasins La zone rayons La zone clients La zone commandes La zone mails/newsletter Chaque zone permet un contrôle intégrale, par exemple la zone produits permet d'ajouter un produit, de supprimer un produit ou encore de modifier un produit déjà existant, tous les attributs sont accessibles à l'administrateur. Cette fenêtre utilise largement AJAX comme nous le verrons dans la partie V, on peut également diffuser la newsletter aux utilisateurs, ou encore envoyer un mail à un utilisateur en particulier. 8

9 III - Mise en place technique 1) Le serveur Jboss et les EJB2 Lors des séances de Travaux Pratiques, le serveur utilisé pour supporter les composants J2EE était un serveur JONAS dont le container gérait les EJB version 2.0. Lors de nos recherches nous avons découvert un autre serveur, qui semble bien plus utilisé que JONAS, il s'agit de JBOSS, serveur réputé pour sa robustesse, qui présente l'avantage d'être l'un des rares containers supportant la dernière version des EJB (version 3.0). De plus, une quantité impressionnante de plug-in et de documentation existe pour agrémenter l'environnement de développement d'un serveur JBOSS. Nous avons donc choisi de l'utilisé, mais cependant nous avons préférer rester dans les EJB 2.0 car les versions des serveurs et des outils qui gèrent les EJB 3.0 sont encore au stade «Beta» ce qui nous semble gênant pour une application qui se doit avant tout d'être fiable. Cependant le fait d'utiliser JBOSS permettra à notre application d'évoluer assez facilement vers les EJB 3.0 lorsque leur utilisation s'avèrera utile. L'environnement de travail JBOSS: Dans un premier temps, nous avions pensé utiliser Netbean, l'environnement de développement gratuit de Sun. Ce logiciel, très puissant, nous a cependant déçu de part un aspect qui peut surprendre: en effet Netbean automatise un grand nombre de tâches, comme la génération systématique des fichiers.xml ou encore la gestion quasi opaque du serveur, ce qui nous a dérangé car nous préférions maitriser tous les aspects du développement (dont les fichiers.xml sont une clef). Nous nous sommes alors retournés vers Eclipse, pour lequel nous nous sommes déjà familiarisés lors de précédents projets. Une version spéciale de Eclipse, dédiée à JBOSS, est particulièrement efficace et inclut des plugins qui nous le verrons par la suite nous ont été d'un grand secours. (inclus notamment la gestion de xdoclet et du packaging) Cet IDE est disponible à l'adresse suivante: La sécurité: authentification par certificats SSL Soucieux de sécuriser l'accès à notre application, à la fois pour rassurer nos clients, mais aussi pour nous mêmes, nous avons configuré le server tomcat qu'inclut Jboss afin d'effectuer des communications dites tunnelisées grâces au protocole SSL, basé sur des certificats d'authentification. Cet accès se fait donc par https, sur le port standard Nous n'avons bien évidemment pas pu faire valider le certificat du serveur, puisque cela coute autour de 500 euros par an! Cela a simplement pour conséquence d'avertir l'utilisateur que le certificat ne provient pas d'un site de confiance... Nous avons également relevé que SSL est à ce jour la méthode qui propose le meilleur compromis entre haute sécurité et facilité d'utilisation pour l'internaute. D'autres méthodes, comme le httpacces, simples à mettre en œuvre, propose une sécurité d'un niveau beaucoup plus faible. 9

10 2) La base de données MySQL La base de données fait partie du socle d'une application J2EE, elle doit être robuste et fiable. La plupart des containers, comme JONAS ou JBOSS, propose des bases de données intégrées, qui sont simples d'utilisation mais aussi limitées (elles sont surtout utile pout les phases de tests). Nous nous somme alors tourné vers un standard des bases de données: MySQL, dans sa version 5.0, à laquelle notre serveur JBOSS sera connecté. Nous avons utilisé la dernière version du serveur MySQL, la 5.0 disponible ici: Une fois installé, il suffit de créer une base de données via l'invite de commande (avec la commande sql «CREATE DATABASE nom_de_la_db). Pour la suite nous prendrons «J2EE_db» comme nom de notre base. Il nous a fallu ensuite adapter JBOSS, notamment modifier sa configuration, et lui ajouter le driver de MySQL. Le driver est disponible ici: et doit être placé dans \server\default\lib. Ensuite, le fichier \server\default\conf\standardjbosscmp-jdbc.xml doit être modifié ainsi: <defaults> <datasource>java:/avotreserviceds</datasource> <datasource-mapping>mysql</datasource-mapping> Et le fichier \server\default\deploy\mysql-ds.xml doit être modifié ainsi: <!--<local-tx-datasource> <jndi-name>avotreserviceds</jndi-name> <connection-url>jdbc:mysql://gorguda.myftp.org:3306/j2ee_db</connectionurl> <jndi-name> peut être choisi au hasard, du moment que les fichiers xml que nous verrons plus tard prennent en compte le même nom. <connection-url> correspond à l'adresse de la base de donnée que nous avons crée Nous avons procédé à un test qui nous a semblé intéressant de relever: nous avons configurer la base de données en «remote» et l'avons placé sur une machine différente de celle qui héberge le serveur JBOSS, nous avons alors observé une très nette baisse de performances (que nous avions prévu, mais pas à ce point) lors des accès à la base de données, nous avons donc abandonné l'idée de répartir les services sur des machines différentes pour finalement les placer sur une seule machine afin de n'avoir que des accès locaux. 10

11 L'accès et la gestion de notre base de données: Afin d'accéder et de modifier facilement à notre base de données, nous avons utilisé SQLyog, un logiciel multi-plateformes gratuit largement utilisé par les développeurs, disponible à l'adresse suivante: Il permet notamment la création très rapide de tables et d'entrées dans la base de données, ou encore de le test de requêtes SQL, et nous à été d'un grand secours lors de la phase de test, pour notamment voir si le mapping et les modifications s'effectuaient correctement. 3) Utilisation d'ajax AJAX est un acronyme anglais signifiant Asynchronous JAvascript and XML (Javascript et XML asynchrones). Il s'agit d'employer l'objet XMLHttpRequest() pour communiquer avec le serveur. L'objet permet d'échanger des informations sous différents formats (dont XML, HTML ou texte), mais son principal attrait est sa nature «asynchrone» : tout cela peut se faire sans recharger la page. C'est ce qui permet de mettre à jour certaines parties d'une page sur base d'évènements déclenchés par l'utilisateur. Notre intérêt pour les nouvelles technologies et notre recherche d ergonomie, d originalité, d efficacité et d esthétisme nous ont menés à utiliser AJAX. L intérêt d AJAX est qu il permet de rapprocher une application web d une application classique, l application ne réagissant plus qu à un nombre très limités d événements comme le click de souris mais à des événements plus complexes comme la pression d une touche ou le survol d un élément. Nous avons utilisé les librairies prototype.js et scritaculous.js disponibles sur internet aux adresses suivantes : et La librairie prototype.js présente des fonctions basiques d AJAX tel que la recharge d un unique élément de la page web. Nous avons utilisé cette fonction au maximum afin de n avoir à actualiser que les éléments qui présentaient des modifications. - La fonction Ajax.Updater(conteneur,url,options) permet de mettre à jour uniquement le conteneur sans avoir une actualisation de toute la page, évitant ainsi un désagréable effet «flash» à l utilisateur. - La fonction Ajax.PeridicalUpdater(conteneur,url,options) recharge le conteneur de la même manière que la fonction précédente mais le fait de manière périodique. La librairie scriptaculous.js offre des fonctions beaucoup plus graphiques: - Drag and drop : permet de définir des éléments «glissables» et des conteneurs «déposables» pour y placer les éléments «glissables». Plusieurs options sont disponibles : les conteneurs ne peuvent accepter qu une classe d éléments, peuvent changer de style au survol, les éléments peuvent revenir à leur place - Autocomplétion : permet d afficher une liste d éléments envoyée par le serveur au fur et à mesure de la frappe d une recherche. - Effets visuels : permet d animer un conteneur avec des transitions : clignotement, 11

12 défilement, agrandissement, apparition, disparition. 4) Utilisation de subversion Dans tout projet impliquant une équipe, l'utilisation d'un logiciel de gestion des ressources partagées est indispensable. C'est pourquoi l'une des premières étapes du projet a été de mettre en place un serveur Subversion pour l'équipe. Subversion est un logiciel récent, qui rend aujourd'hui obsolète le célèbre CVS. Sa mise en place a pris du temps puisqu'il s'agissait là pour nous d'une nouvelle technologie. Voici les étapes que nous avons suivies: 1) Mise en place d'un serveur Apache 2) Installation de «svn» (le support de subversion) pour chaque membre 3) Création d'un «repository»: un dépôt central utilisé par toute l'équipe sur le serveur Apache 4) Configuration du serveur Apache (notamment l'ajout des modules permettant la gestion de svn, et la prise en charge du repository commun) 5) Configuration de nos environnements de travail: - Installation du plugin svn pour Eclipse: Subclipse ( ) - Création chez chacun d'un d'entre nous d'un dépôt local Subversion aura été un élément catalyseur du développement puisqu'il a permit à l'ensemble de l'équipe de travailler sur les mêmes sources et ainsi éviter de sans cesse de s'échanger des fichiers inutiles et se perdre dans les versions dont chacun disposait. 5) Utilisation de xdoclet Xdoclet est un logiciel de génération de code, inclut dans la version «Jboss» de l'ide Eclipse, qui va notamment nous servir à générer des fichiers XML grâce à des tags placés dans les fichiers sources (à l'image des tags Javadoc). Xdoclet se configure pour un projet: on ajoute des «tâches» xdoclet, par exemple on peut spécifier une tâche permettant de générer des interfaces correspondant à chaque EJB, qui se réfèrera alors aux tags dédiés. Xdoclet se chargera notamment, grâce aux tags, de générer les fichiers XML de déploiement, ce qui nous libère de la pénible vérification de la conformité des fichiers xml (par exemple xdoclet se charge d'imbriquer les balises sans que l'on ait à spécifier un ordre quelconque: ainsi xdoclet ne se contente pas d'une simple analyse, mais relève également les erreurs dans nos tags et gère seul la bonne imbrication des balises). Site officiel: 12

13 6) Présentation du modèle MVC Une architecture MVC cherche à séparer trois choses : le Modèle, les Vues et les Contrôleurs. Les contrôleurs permettent de répondre aux actions de l'utilisateur. Chaque contrôle est associé à une vue : cette dernière permet de présenter l'information retournée à l'utilisateur. Bien entendu, l'information renvoyée est dépendante des actions d'entrées de l'utilisateur (capturées par les contrôleurs, nous venons de le dire). Les liens (les traitements) sont réalisés par le modèle (la logique métier). Si nous cherchons à mettre en œuvre une architecture MVC via un environnement J2EE, on peut donc faire les rapprochements suivants : Un contrôleur est implémenté sous forme de servlet Java. Le modèle consiste en l'implémentation de la logique métier du site Web. Chaque vue est implémentée via une servlet. Dans la pratique, on peut reprocher une chose au modèle MVC sous environnement J2EE : il est nécessaire de coder un grand nombre de servlets Java pour réceptionner les requêtes clientes. Mais il permet cependant une visibilité et une clarté dont on se passerait difficilement. 13

14 IV - Développement: niveau EJB 1) Choix d'implantation La technologie J2EE repose sur la notion de Bean, implémenté sous forme de classes Java, ces objets particuliers, gérés par le container et stockés dans la base de données, sont de 2 types: les entity Bean (persistants) et les Session beans (relatifs au contexte de l'utilisateur). Le premier choix d'implémentation consistait à choisir comment la persistance des beans allait être gérée: CMP (Container Managed Persistence) ou BMP (Bean Managed Persistence). Le mode BMP permet le contrôle total des beans, mais se révèle très lourd d'utilisation, nous avons donc opté pour l'utilisation du mode CMP, bien plus facile à utiliser (notamment la gestion de la base de données est entièrement effectué par le container) et ne présentant aucun inconvénient vis à vis de notre application. a) Les entity bean Voici la liste des bean qui constituent la structure du site : En rouge : les primary key accountbean : correspond à un compte bancaire Attributs : Integer id La clé primaire. C'est l'identifiant du compte bancaire String owner Le nom du propriétaire du compte Double balance Le solde du compte Méthodes disponibles (en dehors des getters et setters) void credit(double balance) Drédite le compte void retail(double balance) Débite le compte 14

15 storebean : correspond à un magasin, qui fournira notre site Attributs Integer id La clé primaire. C'est l'identifiant du magasin String name Le nom du magasin String adress L'adresse du magasin String L' du magasin String phone Le numéro de téléphone du magasin clientbean : correspond à un utilisateur enregistré sur le site Attributs String login La clé primaire. C'est le login de l'utilisateur String pwd Le mot de passe de l'utilisateur String name Le nom de l'utilisateur String firstname Le prénom de l'utilisateur String adress L'adresse de l'utilisateur String phone Le numéro de téléphone de l'utilisateur String L' de l'utilisateur Boolean newsletter Indique si l'utilisateur est abonné à la newsletter ou non String title La qualité de l'utilisateur categorybean : correspond à un sous-rayon Attributs Integer id La clé primaire. C'est l'identifiant du sous-rayon String name Le nom du sous-rayon String parentcategory Le nom du rayon auquel il appartient 15

16 productbean : correspond à un produit Attributs Integer id La clé primaire. C'est l'identifiant du produit String name Le nom du produit String picture L'url de la photo du produit String description La description du produit Double price Le prix du produit Integer stockleft Le stock restant disponible pour ce produit Double mark La note du produit, déterminée par les internautes Integer voternumber Le nombre d'internautes ayant voté pour ce produit adminbean : correspond à un administrateur du site Attributs Integer id La clé primaire. Correspond à l'identifiant de l'administrateur String pwd Le mot de passe de l'administrateur Méthodes disponibles (en dehors des getters et setters) void computeallproducts() Crée un vecteur de tous les produits disponibles en base de données productlocal getrandomproduct() Revoie un produit au hasard parmi le vecteur des produits Vector<categoryLocal> getcategoriesbyparent(string parentcategory) Renvoie la liste des sous-rayon du rayon dont le nom est passé en paramètre 16

17 orderbean : correspond à une liste de courses Attributs Integer number La clé primaire. C'est le numéro de la commande Date date Date de la commande String state L'état de la commande Pour chaque clé primaire, en dehors de celle de l'ejb clientbean, on assigne une propriété d'autoincrémentation, ce qui nous permet de ne pas la gérer, spécialement quand un crée un EJB. b) Le(s) session bean Nous avons utilisé un session bean, caddiebean, pour représenter le caddie. Ce session bean est en stateful, c'est-à-dire qu'il peut avoir plusieurs états possibles. Attributs HashMap productlist Représente la liste des produits du caddie, accompagné de la quantité choisie Double total Prix total du caddie Méthodes disponibles (en dehors des getters et setters) void addproduct(productlocal p, Integer quantity) Ajoute un produit et la quantité choisie au caddie void removeproduct(productlocal p, Integer quantity) Retire la quantité passée de produits passés en paramètre du caddie, si il en dispose de la quantité supérieure au paramètre void clearcaddie() Efface le contenu du caddie c) Les interfaces locales Les interfaces locales, générées par xdoclet, représentent les EJB dans le code de la servlet. Ce sont les objets JAVA qu'on récupère grâce aux home locales. Chaque méthode métier décrit dans les EJB possédant le view-type="local" sont disponibles par cette interface. 17

18 d) Les home locales Les home locales, générées elles aussi par xdoclet, représentent la table de la base de données associée à un EJB. La méthode create y est présente, qui représente la méthode ejbcreate et ejbpostcreate des EJB. On y retrouve également tous les finders : celui défini automatiquement, qui renvoie un EJB grâce à sa clé primaire, ainsi que ceux définis par xdoclet grâce au signature="" query="" dans les entêtes des classes des EJB. e) Les value objects Le value object (ou encore 'javabean') occupe une place importante dans le respect du modèle MVC et de l'architecture J2EE: Puisque nous n'avons pas de référence directe à un objet persistent (un EJB), comment allons-nous lire le contenu de cet objet? Cette limitation à une solution très simple, et qui ajoute même de nombreuses possibilités d'amélioration: Le Value Object, qui n'est autre qu'un objet qui offre une vue figée de notre entité à un moment donné. Ainsi tous nos entity beans possède un valueobject (généré par xdoclet grâce au tag de name = "category" match = "*" Un Value Object possède un constructeur reprenant la méthode ejbcreate du Bean correspondant, ce qui permet dans une servlet de construire un valueobject à partir d'un bean local récupéré par la home. Les valueobject possèdent l'avantage considérable de pouvoir être passé directement en paramètre d'une page JSP: ainsi les pages JSP utilisent le tag 'usebean' pour récupérer ces ValueObjects 18

19 2) Les relations Les relations constituent une élément clef des EJB, elles permettent de définir au sein de la base de données des relations entre les beans qui y sont enregistrés. Ces relations ont été définies dès la conception du projet et font partie intégrante de la structure de la base de données. Les relations sont de 3 grands types: 1-n, n-m et 1-1, et chacune de divise en 2 sous-types: unidirectionelles et bidirectionelle. Voici un schéma symbolisant les différentes relations entre EJB 19

20 a) L'exemple de la relation 1-n La relation 1-n ( One to Many ), est la plus fréquente, nous allons ici présenter la facon dont elle a été implémentée, grâce aux tags xdoclet. Prenons l'exemple de la relation entre les produits et le magasin qui les propose: il s'agit de la relation [produit 1 n store] : Un magasin connait n produits qui chacun connaissent leur magasin. Cette relation, dite CMR (Container-Managed Relationships), va être définie par un getter et un setter, à l'instar d'un CMP field (Container-Managed Persistence) classique. Dans l'ejb productbean.on trouve: /** * Getter for CMR Relationship * view-type="local" name = "product-to-store" * role-name = "product-has-one-store" * target-multiple = "yes" * target-ejb = "store" * target-role-name = "store-has-many-product" fk-column = "storeid" related-pk-field = "id" */ public abstract avotreservice.interfaces.storelocal getstore(); C'est ici le qui nous intéresse: On donne un nom à la relation On nomme le rôle de la relation, qui servira dans l'autre bean concerné par la relationship On déclare que se beans est un coté many de la relation ( target-mutliple=yes ) On définit l'autre EJB de la relationship On déclare le nom du rôle de la relation dans l'autre bean Enfin le permet de définir la colonne qui servira à référencer du coté des produits ( many ) la colonne des ID des magasins et le CMP field qui sert à remplir cette colonne. Le container JBOSS se contente de ces informations pour gérer la relation. 20

21 Dans l'ejb storebean.on trouve: /** * Getter for CMR Relationship * view-type="local" name = "product-to-store" * role-name = "store-has-many-products" * target-multiple = "no" * target-ejb = "product" * target-role-name = "product-has-one-store" */ public abstract Collection getproducts(); On comprend grâce à ce second coté de la relation comment celle-ci est interprétée: On retrouve productbean comme EJB cible On retrouve product-has-one-store comme rôle cible dans l'ejb productbean.java Ici, la propriété target-multiple est bien à no puisque l'on est du coté 1 de la relation. <?xml version="1.0" encoding="utf-8"?> <!-- $Id: mysql-ds.xml,v /12/01 11:36:28 schrouf Exp $ --> <!-- Datasource config for MySQL using available from: --> <datasources> <local-tx-datasource> <jndi-name>avotreserviceds</jndi-name> <connection-url>jdbc:mysql://gorguda.myftp.org:3306/j2ee_db</connection-url> <driver-class>com.mysql.jdbc.driver</driver-class> <user-name>root</user-name> <password>root</password> <exception-sorter-classname>org.jboss.resource.adapter.jdbc.vendor.mysqlexceptionsorter</exception-sorter-classname> </local-tx-datasource> </datasources> 21

22 b) la directionnalité des relations Une transaction se définit également par sa directionnalité, qui définit si la relation est visible des deux ou de un seul de ses cotés. Ainsi une relation bidirectionnelle permettra aux 2 cotés d'être liés, tandis qu'une relation unidirectionnelle n'assurera le maintien et la visibilité de la relation que d'un seul coté. Dans l'exemple précédent, la relation était bidirectionnelle, pour cela, il suffit d'utiliser des deux cotés de la relation le le container interprète alors la relation comme bidirectionnelle. Prenons un autre cas, la relation [admin n 1 category], elle est unidirectionnelle: l'admin doit connaître la liste des rayons, mais les rayons n'ont pas à connaître l'admin. Nous avons alors utilisé le uniquement dans le bean categorybean. 3) les transactions Les transactions sont un élément de sécurité (cohérence) essentiel pour une base de données. Dès l'instant où l'on doit gérer la persistance dans un contexte J2EE, dans un conteneur EJB, il faut se pencher sur les paramétrages ou sur le code de gestion des transactions. Le conteneur de JBOSS est responsable de la démarcation transactionnelle. La façon dont le conteneur gère la transaction pour une méthode de l'ejb est paramétrée dans les " attributs de transaction ". Laisser le conteneur gérer les transactions permet de spécifier le comportement transactionnel d'un bean entreprise sans réécrire de code, mais aussi de changer le comportement d'une application en adaptant finement le comportement des beans entreprise. Le conteneur gère automatiquement la démarcation transactionnelle à l'exécution d'une méthode selon ces attributs transactionnels. Ici nous avons définit des transactions pour les opérations critiques, c'est-à-dire celles dont la réversibilité est nécessaire, en particulier la phase d'achat. Xdoclet propose des tags permettant la définition des transactions. Prenons l'exemple de la méthode credit dans l'ejb accountbean: /** view-type="local" * Credite le compte view-type="local" type = "Required" balance somme à créditer */ public void credit(java.lang.double balance) { setbalance(getbalance() + balance); } 22

23 Le tag qui nous intéresse ici = Required : Il indique que l EJB adhère à la transaction de l appelant et que si aucune transaction n existe, il crée la sienne. D'autre valeurs existent, notamment RequiresNew qui indique que l EJB crée systèmatiquement sa propre transaction. Ce tag indique le comportement de la méthode, mais pas la façon dont le Bean va traiter les transactions, ainsi en tête de la classe on place le tag suivant: name= transaction-type="container" Ce tag indique que c'est le container JBOSS qui se charge de la gestion des transactions. En effet une transaction n'a que deux issues possibles: un 'commit' (réussite) ou un rollback (échec), en fonction de cette issue, le container se chargera de valider ou d'annuler la transaction, ceci soulage évidemment considérablement notre travail 4) les finders EJB-QL Les finders constituent une brique de la plateforme J2EE, il s'agit de méthodes java permettant un accès directe à la base de données grâce à une requête EJB-QL (Entreprise Java Beans Query Language), un langage dérivé de la norme SQL. Par défaut, chaque bean possède un finder sur la clef ( primary key ) qui permet donc de récupérer directement un bean local si l'on connait sa clef, ce finder, très utile, n'est cependant pas suffisant. Nous avons du développer nos propres finders afin de réaliser certaines fonctions. Prenons l'exemple de la recherche avancée, qui permet de rechercher des produits sur la base de données en fonction de paramètres fournit par l'utilisateur. Xdoclet va là encore nous être d'une grande aide, puisque grâce à des tags de classes, il se chargera de générer le finder dans la home locale qui correspond au bean. Voici le tag de classe correspondant à ce finder que l'on trouve dans productbean: signature="java.util.collection findproducts(java.lang.string name, java.lang.string trademark, java.lang.string parentcategory, java.lang.double price1, java.lang.double price2)" * query="select Object(p) from product p WHERE p.name LIKE?1 AND p.trademark LIKE?2 AND p.price BETWEEN?4 AND?5 AND p.category.parentcategory LIKE?3" On indique la signature du finder, qui en l'occurrence renvoie une collection de Beans (les produits correspondant à la recherche avancée) et prend en paramètre les différents critères de la recherche avancée. On indique ensuite la requête EJB-QL en elle même, le langage étant très proche de celui utilisé par MySQL, la requête n'a pas été très difficile à écrire. 23

24 Xdoclet génère alors automatiquement le finder dans AccountLocalHome: public java.util.collection findproducts(java.lang.string name, java.lang.string trademark, java.lang.string parentcategory, java.lang.double price1, java.lang.double price2) Qui s'utilisera simplement sur la home récupéré dans une servlet. Cependant nous retiendrons la pauvreté du langage EJB-QL, qui de plus ne respecte pas toujours la norme SQL: Fonctions majeures manquantes (UPPER et LOWER par exemple) Respect de la casse pour la fonction LIKE, contrairement à SQL (entre autres) Impossible de retourner plusieurs colonnes avec un Select Cependant EJB-QL a été largement modifié dans la nouvelle version d'ejb (la 3.0), une version 2.x comportant ces modifications aurait été la bienvenue, puisque de nombreux développeurs ne sont pas encore près à passer aux EJB3, qui implique de vastes mises à jour et un support pas encore fiable à 100%. 5) Les descripteurs XML et le mapping de la base de données Les liens entre les différentes entités du projet se font grâce au fichiers XML. Voici les différentes fonctions nécessaires pour bien paramétrer le projet : a) mappping et configuration de la base de données Le serveur JBoss doit connaitre la base de données afin d'y accéder. Pour cela, on passe par l'intermédiaire de 2 fichiers : mysql-ds.xml : Ce fichier doit être présent dans le répertoire deploy du serveur. Il contient les informations nécessaires afin de reconnaitre la base de données utilisée, comme l'url de la base, ainsi que l'user et le pass pour s'y connecter. Voici le contenu de ce fichier : standardjbosscmp-jdbc.xml : Ce fichier doit être présent dans le répertoire conf du serveur. Il effectue le mapping de la base grâce au nom jndi, défini dans le fichier précédent, ici avotreserviceds. Voici l'extrait du fichier correspondant : <jbosscmp-jdbc> <defaults> <!--<datasource>java:/gorgudads</datasource>--> <datasource>java:/avotreserviceds</datasource> <datasource-mapping>mysql</datasource-mapping> 24

25 b) les descripteurs ejb-jar.xml, web.xml et application.xml Le projet se divise en 2 modules : ejb et web. Le module EJB, comme son nom l'indique, pour les EJB, et le module web, pour les servlets et les pages web. Chaque module dispose d'un descripteur. A ceux-ci s'ajoute un dernier descripteur qui regroupe ces fichiers. Ces descripteurs sont indépendants du serveur utilisés. Le fichier ejb-jar.xml décrit tout ce qui concerne les EJB : leur nom jndi, leur interface locale, leur home, leur relations... C'est ce fichier qui va être utilisé pour le déploiement des EJB, et qui va servir d'aiguillage lors de leur utilisation. Le fichier web.xml décrit tout ce qui concerne les Servlet : leur propriétés (nom JNDI, description...) et leur mapping (url-pattern). C'est ce fichier qui va être utilisé pour le déploiement des Servlet, et qui va servir d'aiguillage lors de leur utilisation. Le fichier application.xml décrit les différents modules utilisés dans le projet, ici modules ejb et web. On y retrouve le nom des archives correspondant aux modules, ainsi que la racine du contexte, par laquelle on passe pour accéder au site. c) les descripteurs jboss.xml, jboss-web.xml et jbosscmp-jdbc.xml Ce sont les fichiers utilisés pour raccorder les descripteurs au serveur : jboss.xml pour le module ejb, jboss-web.xml pour le module web. Le fichier jbosscmp-jdbc.xml assure la liaison avec la base de données, notamment avec les informations datasource et datasource-mapping, qui correspondent à ceux du fichier standardjbosscmp-jdbc.xml. 25

26 V - Développement: niveau Web 1) Utilisateur Notre site est découpé en 8 zones : a) Logo Zone 1 Le logo du site est cliquable, il ramène à la page d accueil. b) Barre d'onglets Zone 2 Les onglets ont été dessinés à l aide du logiciel ImageReady d Adobe. Les onglets prennent la couleur du rayon lorsqu ils sont survolés ou cliqués. Nous avons utilisé un système de fenêtre coulissante afin de ne pas avoir de temps de chargement lors de changement de couleur. L image de l onglet contient les deux couleurs, elle donc chargée qu une seule fois et est recadrée au moyen de classe CSS : 26

27 TabDroguerie.gif li#droguerie,.headdroguerieoff{ background: url(./images/tabdroguerie.gif) no-repeat left; } li#droguerie a:hover, li#droguerie a:active, li#droguerie a:focus,.headdroguerie{ background: url(./images/tabdroguerie.gif) no-repeat right; border: none; } La sélection d un onglet recharge les zone 3, 4, 5, 6 avec les couleurs du rayon sélectionné grâce à du javascript. c) Menu Zone 3 Dans la page d accueil, le menu contient la liste des liens vers les rayons, puis la liste des liens vers les sous-rayons lorsqu on est dans un rayon. Lors de la sélection d un rayon, comme pour la barre d onglets, les zones 3, 4, 5 et 6 sont actualisées. d) Main Zone 4 Page principale : Une vidéo en Flash de démonstration de l utilisation du site a été créée. Le choix du format Flash s imposait de lui-même pour éviter des problèmes de compatibilité avec les différents navigateurs. Liste de produits : En fonction du sous-rayon courant, un appel à la servlet MainServlet passe en paramètre à la page main.jsp une liste de produits à afficher. L image est «glissable», elle peut être déposée dans le caddie pour effectuer un achat. La partie textuelle est cliquable, elle mène à la fiche du produit. 27

28 Produits : Lorsqu on passe à MainServlet un identifiant de produit, elle va chercher l EJB du produit correspondant et passe le JavaBean correspondant à la page JSP. L image est ici également «glissable» pour être déposé dans le caddie. Sous l image, l utilisateur peut voir l avis des consommateurs et ajouté le sien si il le désire (note et commentaires). Les cinq étoiles permettent de noter le produit. L activation et la validation des étoiles sont gérées par javascript. La zone de commentaire permet de voir les commentaires des autres consommateurs et de laisser son propre avis. Elle est visible qu après un clique sur le lien «Voir les commentaires», elle est affichée grâce à un effet «slide down» issu de la librairie scripaculous. e) Rechercher Zone 5 Le conteneur Rechercher possède un champ pour la recherche et un lien vers la recherche avancée. Le champ de recherche est autocomplété grâce à la fonction autocomplete de scripaculous qui affiche la liste de produits fournie par la servlet AutocompleteServlet, elle est recalculé à chaque nouvelle frappe et ce à partir de la 2e lettre entrée. Si l utilisateur renseigne le champ recherche avec le nom exact du produit, la fiche produit est directement accessible dans le conteneur «main» tandis que si aucun produit ne correspond au nom 28

29 renseigné une recherche est effectue dans nom, marque et description du produit. Si tout fois l utilisateur veut faire une recherche plus poussée, il en a la possibilité avec le lien vers «Recherche avancée». La rechercher avancée est faite à l aide d un «finder» défini dans l EJB productbean.java. Une vérification sur la validité des prix minimum est maximum est faite ; un indicateur «Prix non valide» s affiche le cas échéant. f) Publicité Zone 6 Afin d attiser le client, une bannière a été ajouté. Les produits de cette bannière sont choisis au hasard parmi la liste des produits. Un effet de la bibliothèque des effets visuels de scriptaculous est choisi également au hasard. L effet visuel permet d attirer l attention de l utilisateur. De plus, cette bannière est rafraîchie toutes les 10 secondes par la fonction PeriodicalUpdater fourni par la librairie prototype.js. g) Client Zone 7 Cette fenêtre permet au client de s identifier, ce qui est nécessaire pour faire une commande ou poster des commentaires. Lorsque le client s identifie, seule cette zone est rechargée. S il n est pas encore identifié sur notre site, il peut le faire en cliquant sur le lien Nouveau client qui affiche un formulaire d inscription dans la zone 3. Un contrôle sur le login est opéré afin d assurer l unicité du login. De plus, on vérifie que tous les champs ont été remplis. Le mot de passe est crypté avant d être stocké dans la base de données grâce à la méthode de hachage SHA-256. Si l utilisateur a perdu son mot de passe, un lien Mot de passe oublié lui permet de remplir son login et son adresse mail. Un mail lui est alors envoyé avec un mot de passe généré. Une fois identifié, l utilisateur peut modifier ses coordonnées ou se delogger. 29

30 h) Caddie Zone 8 Le caddie est zone «déposable» au sens de la librairie scriptaculous, on peut y déposer les images des produits provenant de la zone 3. Les images des produits sont affichées en miniature, les noms des produits sont tronqués et la quantité est affichée entre parenthèses. Les images sont «glissables» afin de pouvoir les supprimer, en les déposant dans les rayons, c est-à-dire la zone 3. Le bouton Valider permet d afficher un récapitulatif du caddie dans le main : Les boutons -, + et x permettent respectivement de réduire la quantité d une unité, d augmenter la quantité d une unité et de supprimer complètement le produit du caddie. Un indicateur renseigne le client sur la disponibilité du produit. Le clique sur l un de ces boutons n entraîne le chargement que de cette zone et du caddie. Le bouton Valider confirme la commande. Si le client ne possède pas les fonds nécessaire à l achat du caddie, la transaction est annulée et un message lui est adressé. Si la commande est effective, le client reçoit un mail de récapitulatif de sa commande. 30

31 2) Administration La page d administration contient 6 zones «glissables» et «déposables», ce qui permet à l administrateur d organiser sa page comme il le souhaite : a) Gestion des produits, magasins, sous-rayons et clients L administrateur a la possibilité d ajouter, de modifier ou de supprimer un produit, un magasin, un sous-rayon ou un client. Chacun des champs de recherche est autocomplété à l aide de la fonction Autocomplete de la librairie scriptaculous et de la servlet AutocompleteServlet. Si le nom recherché existe déjà dans la base de données, alors on modifie cet EJB, sinon on en créer un nouveau. 31

32 b) Gestion des commandes L administrateur peut accéder à l historique des commandes effectuées par chaque client afin de remédier d éventuels litiges ou réclamations. Les commandes sont classées par client puis par date. c) Gestion des mails L administrateur peut par l intermédiaire de l interface envoyer un mail à un utilisateur précis ou à l ensemble des utilisateurs inscrits à la newsletter pour leur faire part des nouveautés ou des promotions du site. 32

33 VI - Mise en service de l'application 1) Packaging et déploiement du serveur La version JBOSS de l'ide Eclipse inclue un excellent gestionnaire de packaging qui permet de générer le xml de déploiement à partir d'une interface graphique, et de l'exécuter d'un simple clic. Voici à quoi ressemble notre configuration de déploiement: On décrit le contenu de chaque package de déploiement, avec leurs descripteurs et fichiers respectifs. Il nous suffit alors (sous Eclipse ou manuellement), de déployer le fichier avotreserviceapp.ear pour que JBOSS effectue automatiquement le déploiement du contenu du package. 33

34 2) Validation du service: tests Les tests constituent une tâche longue et indispensable pour tout projet qui se veut fiable et solide. Tout au long du développement, de nombreux tests ont été effectués afin de valider les différents étapes. Certains de ces tests nous ont semblé particulièrement importants, dans la mesure où nous nous devions de les refaire régulièrement au fur et à mesure de l'avancement, c'est pourquoi nous avons crée un ensemble de servlets/jsp uniquement dédiés aux tests, dans celles ci on trouve notamment des tests pour: La création d'entrées dans la base de données, et leur récupération La validité des relations CMR La validité des transactions L'envoi d' s Les finders EJB-QL Ce n'est qu'une fois tous ces tests majeurs validés que l'on peut passer à une phase plus précise du débogage qui consiste à utiliser l'application dans un maximum de cas envisageables et de vérifier que les résultats sont ceux attendus (que ce soit dans le navigateur ou dans la base de données). Ces tests nous permettent aussi de démontrer au client que nous utilisons des technologies fonctionnelles sur lesquelles il pourra compter. 34

35 VII Retour sur les technologies utilisées Voici notre bilan sur les technologies nous avons été confrontées et décrites dans ce rapport: Niveau Développement: Technologie Les + Les - Problèmes rencontrés Eclipse Solide, facile à utiliser, flexible - - Subversion Efficace, s'adapte à tous les environnements Utilisation parfois déroutante Un certain temps pour s'adapter au service Niveau EJB Technologie Les + Les - Problèmes rencontrés Jboss Solide, bien documenté, compatible EJB Difficile à mettre en place, ce qui venait probablement du fait que nous n'étions pas familiarisés avec JBoss MySQL Fiable, très bien documentée, aucun problème rencontré. - La connexion avec Jboss n'était pas des plus faciles, mais une fois effectuée et comprise, nous avons pu la refaire facilement. Xdoclet (Générateur de code) Excellent logiciel, gain Il est parfois difficile de temps énorme sur la de trouver le tag qui génération des XML, correspond à ce que documentation très l'on souhaite tellement fournie: les possibilités il en existe sont impressionnantes. Bien souvent, on rencontre des problèmes qui sont indirectement liés à xdoclet, comme la bonne configuration des tags pour les transactions. Packaging Configurator Très pratique, clair et maniable. - - EJB-relations Une fois la démarche comprises, les relations sont faciles à mettre en place. - Difficiles à mettre en œuvre: il faut à la fois configurer Jboss et la base de données. 35

36 EJB-transactions Possibilités de laisser le container gérer les relations définies - Difficile à tester EJB-finders Très pratiques. Faciles à définir Ne respecte pas complètement SQL. Certaines fonctions importantes manquantes Difficultés liés au problèmes cités précédemment (on supposait que EJB QL respectait SQL...) SQLyog (Gestionnaire de base de données SQL) Excellent logiciel, très pratique, intuitif et léger à la fois Possibilité de sauvegarder les tables et de tester des requêtes L'interface n'est pas toujours très claire - Niveau Web Technologie Les + Les - Ajax Rapprochement vers une application classique. Librairie disponible en ligne fournissant un grand nombre de possibilités. CSS Mise en forme avancée Laborieux et fastidieux - Javascript Modification facile du contenu web d'une page Debbogage ardu - Flash Compatibilité avec tous les navigateurs. Taille et qualité Problèmes rencontrés Impossibilité d'utiliser Problèmes inhérents au le bouton page javascript. précédente. Le javascript doit être activé.

37 Conclusion Ce projet est de loin celui qui nous aura demandé le plus de temps et d'investissement, mais cela est lié au fait qu'il s'agissait ici d'un sujet réellement passionnant, puisque nous nous retrouvions dans la situation d'une équipe d'ingénieurs, avec un cahier des charges, une dead-line, et un planning. Le fait de développer une application fonctionnelle, basée sur des technologies web récentes est quelque chose de vraiment motivant, il nous a fallu améliorer nos techniques de documentation, prendre le temps pour les décisions importantes et bien sur tout faire pour favoriser le travail d'équipe et donc notre efficacité. La découverte de nouveaux outils et de nouvelles technologies au delà des limites du cours fut une épreuve que nous avons passée avec plaisir. Par exemple l'utilisation et la découverte d'ajax et de xdoclet nous a enthousiasmé au point que nous ne cessions d'améliorer l'utilisation de ces nouvelles technologies. Seuls quelques éléments nous ont troublé voir déçu (on citera par exemple EJB-QL, qui dans sa version 2.0 est de notre point de vue calamiteux, ou encore le langage CSS, pénible, dont nous nous serions bien passé si une alternative efficace existait). Ce projet est en fait la synthèse de nombreux domaines dans lesquels un ingénieur doit évoluer: le développement, l'autonomie (recherche d'informations par exemple), le travail en équipe, la performance. Nous sommes conscients que les technologies J2EE représentent un large espace de travail, et il est rassurant pour nous d'avoir développé un projet complet s'appuyant sur cette plateforme dont l'avenir est certain. Nous sommes également conscients qu'il nous reste encore beaucoup à apprendre, même si nous sommes désormais plus confiant vis à vis de nos connaissances. Le cahier des charges est finalement atteint, mêmes si certaines fonctionnalités gadgets n'ont pas pu être implémentées sur le site, faute de temps (par exemple les EJB incluent la gestion de listes de courses que le client pourrait repasser automatiquement sans repasser dans les rayons, il ne reste plus qu'à implémenter cela dans les servlets et JSP concernées, ce qui est tout à fait faisable dans ce genre d'application, à la fois évolutive et facilement modulable). Enfin, nous avons éprouvé du plaisir de travailler ensemble, chacun s'étant impliqué dans ce projet. Le travail en équipe, lorsqu il est efficace, permet de pousser un groupe vers le haut, et au final, chacun retrouve dans l'application une partie de son travail, ce qui constitue la satisfaction du travail accompli. 37

Mise en œuvre des serveurs d application

Mise 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étail

Rapport Gestion de projet

Rapport Gestion de projet IN56 Printemps 2008 Rapport Gestion de projet Binôme : Alexandre HAFFNER Nicolas MONNERET Enseignant : Nathanaël COTTIN Sommaire Description du projet... 2 Fonctionnalités... 2 Navigation... 4 Description

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

Plus en détail

TME 1 JAVASCRIPT (2 SEANCES)

TME 1 JAVASCRIPT (2 SEANCES) TME 1 JAVASCRIPT (2 SEANCES) 1. EXERCICES DE BASE Créez des fonctions javascript pour : - faire un jeu «plus petit plus grand» qui tire un nombre au hasard que l utilisateur doit trouver en entrant des

Plus en détail

Dossier de Conception Système

Dossier de Conception Système Dossier de Conception Systeme FullMANGA Document Dossier de Conception Système Version 1.2 Commencé le 30 novembre 2006 Dernière modification 4 décembre 2006 Statut Finale Client Enseignants du M2P GI

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet

Cahier de charges (Source : Java EE - Guide de développement d'applications web en Java par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module Site Web dynamique JSP / Servlet Sujet : betaboutique Soutenance le 04 / 01 /2013 &

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

Plus en détail

Présentation générale

Présentation générale SHERLOCK S GESTION La Gestion de la caisse Présentation générale Version 01/2009 1/11 1-LES OUTILS DE GESTION DE CAISSE... 3 2-SHERLOCK S GESTION... 3 3-SHERLOCK S OFFICE SERVER... 4 4-LES OPÉRATIONS DE

Plus en détail

Création d un catalogue en ligne

Création d un catalogue en ligne 5 Création d un catalogue en ligne Au sommaire de ce chapitre Fonctionnement théorique Définition de jeux d enregistrements Insertion de contenu dynamique Aperçu des données Finalisation de la page de

Plus en détail

Tableau de bord Commerçant

Tableau de bord Commerçant Paiement sécurisé sur Internet Paiement sécurisé sur Internet Tableau de bord Commerçant Paiement sécurisé sur Internet Paiement sécurisé sur Internet au de bord Commerçant au de bord Commerçant au de

Plus en détail

WordPress : Guide à l édition

WordPress : Guide à l édition WordPress : Guide à l édition WordPress : Guide à l édition... 1 Présentation... 2 1. Accès au site... 2 2. Le tableau de bord... 2 3. Editez les contenus... 4 Quelle est la différence entre les pages

Plus en détail

KWISATZ MODULE PRESTASHOP

KWISATZ MODULE PRESTASHOP Table des matières -1) KWISATZ - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) PRESTASHOP :...4-1.3.1.1) Les Web Services :...4-1.3.2) KWISATZ

Plus en détail

Maîtriser le backend

Maîtriser le backend 4 Maîtriser le backend Les nouveaux utilisateurs de Magento sont souvent impressionnés par la qualité de son interface d administration, mais ils en redoutent aussi la richesse fonctionnelle. Connaître

Plus en détail

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13

ACCUEIL...2 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12 ACCEPTER OU A REFUSER LE DEVIS...13 ACCUEIL...2 LA COMMANDE...3 ONGLET "NATURE DES TRAVAUX"...3 ONGLET INFORMATIONS...8 ONGLET RECAPITULATIF...9 LA COMMANDE SIMPLE A VALIDER PAR LES ACHETEURS...10 LA DEMANDE DE DEVIS...11 COMPLETER UN DEVIS...12

Plus en détail

Connexion d un client lourd à la messagerie e-santé PACA

Connexion d un client lourd à la messagerie e-santé PACA Connexion d un client lourd à la messagerie e-santé PACA La messagerie sécurisée e-santé PACA est un service de type Webmail. Un Webmail est une interface Web rendant possible l émission, la consultation

Plus en détail

eshop Guide de démarrage rapide Ouvrir et créer une e-boutique attractive en quelques clics

eshop Guide de démarrage rapide Ouvrir et créer une e-boutique attractive en quelques clics eshop Guide Ouvrir et créer une e-boutique attractive en quelques clics Sommaire 1. Connexion à l interface d administration eshop 2. Mise en page générale 3. Assistant de Création Design de votre e-boutique

Plus en détail

Administration du site (Back Office)

Administration du site (Back Office) Administration du site (Back Office) A quoi sert une interface d'administration? Une interface d'administration est une composante essentielle de l'infrastructure d'un site internet. Il s'agit d'une interface

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

ENVOL - Guide utilisateur

ENVOL - Guide utilisateur Secrétariat général DIRECTION DES SYSTÈMES D'INFORMATION ET DE COMMUNICATION SDES Bop Affaire suivie par : En cas de problème, contacter votre support informatique. ENVOL - Guide utilisateur Objet Ce document

Plus en détail

Contexte PPE GSB CR. Analyse. Projet réalisé :

Contexte PPE GSB CR. Analyse. Projet réalisé : Contexte PPE GSB CR Le laboratoire est issu de la fusion entre le géant américain Galaxy et le conglomérat Swiss Bourdin. Cette fusion a eu pour but de moderniser l activité de visite médicale et de réaliser

Plus en détail

Processus d achat PCard

Processus d achat PCard SOMMAIRE Introduction... 3 Connexion à l espace client... 3 Accès au site internet... 3 Identification... 3 Choix du fournisseur... 5 Page d accueil... 5 Choix du point de livraison... 6 Mes informations...

Plus en détail

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux Avant-propos 1. À qui s adresse ce livre? 11 2. Les pré-requis 12 Préambule 1. Rappel sur les architectures Internet/Intranet/Extranet 13 1.1 Le protocole HTTP 14 1.1.1 Les méthodes HTTP 16 1.1.2 Les codes

Plus en détail

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

Gestion de stock facturation : openstock 1.02 juin 2006

Gestion de stock facturation : openstock 1.02 juin 2006 Introduction Gestion de stock facturation : openstock 1.02 juin 2006 Le rapport de stage de Laurent POUCHOULOU décrivant son travail sur la période d Avril à Juin 2006 a été transformé en documentation

Plus en détail

IIS (Internet Information Services) est le serveur Web de Microsoft. Il assure les mêmes fonctions qu'un serveur Web tel qu Apache.

IIS (Internet Information Services) est le serveur Web de Microsoft. Il assure les mêmes fonctions qu'un serveur Web tel qu Apache. Projet Serveur Web I. Contexte II. Définitions On appelle serveur Web aussi bien le matériel informatique que le logiciel, qui joue le rôle de serveur informatique sur un réseau local ou sur le World Wide

Plus en détail

OASIS est une fabrique à bien commun via l utilisation des applications proposées sur son store.

OASIS est une fabrique à bien commun via l utilisation des applications proposées sur son store. Guide Utilisateur 1.1 Présentation d OASIS OASIS est une fabrique à bien commun via l utilisation des applications proposées sur son store. Grâce à OASIS, vous serez capable d acheter ou de choisir des

Plus en détail

1. Installation d'un serveur d'application JBoss:

1. Installation d'un serveur d'application JBoss: EPITA Ala Eddine BEN SALEM App-Ing2 J2EE T.P. 4 EJB3, Serveur d'application JBoss 1. Installation d'un serveur d'application JBoss: télécharger l'archive du serveur JBoss à l'adresse: http://sourceforge.net/projects/jboss/files/jboss/jboss-5.0.0.ga/jboss-5.0.0.ga.zip/download

Plus en détail

WINDOWS SERVER 2003 ADMINISTRATION A DISTANCE

WINDOWS SERVER 2003 ADMINISTRATION A DISTANCE 1. Introduction WINDOWS SERVER 2003 ADMINISTRATION A DISTANCE En règle générale, les administrateurs ne travaillent pas en salle serveurs. Et cette dernière peut se trouver n'importe où dans le bâtiment.

Plus en détail

Paiement sécurisé sur Internet. Tableau de bord Commerçant

Paiement sécurisé sur Internet. Tableau de bord Commerçant Paiement sécurisé sur Internet Tableau de bord Commerçant SOMMAIRE 1 Principe 4 1.1 Principe général 4 1.2 Environnement de validation 4 1.3 Environnement de Production 4 2 Accès au tableau de bord 5 2.1

Plus en détail

Chapitre 9 Les métadonnées

Chapitre 9 Les métadonnées 217 Chapitre 9 Les métadonnées 1. De l'importance des métadonnées Les métadonnées Au-delà du contenu des données elles-mêmes d'un système, il est souvent très utile de connaître un minimum d'informations

Plus en détail

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement: Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

Plus en détail

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008

TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Université Claude Bernard Lyon 1 UFR d informatique avril 2006 MIAG soir Systèmes d Information Méthodes Avancées TP 2 : programmation côté serveur À rendre pour le mardi 6 mai 2008 Introduction Dans ce

Plus en détail

Guide Utilisateur Particuliers. Sommaire

Guide Utilisateur Particuliers. Sommaire Sommaire 1.Installation...3 1.1.Configuration...3 1.2.Sous Internet Explorer...4 1.3.Sous Mozilla Firefox...5 1.4.Sous Google Chrome...6 1.5.Aller sur le site...7 2.Identification...8 2.1.Inscription...8

Plus en détail

Alfresco Mobile pour Android

Alfresco Mobile pour Android Alfresco Mobile pour Android Guide d'utilisation de l'application Android version 1.1 Commencer avec Alfresco Mobile Ce guide offre une présentation rapide vous permettant de configurer Alfresco Mobile

Plus en détail

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X

Groupe Eyrolles, 2003, ISBN : 2-212-11317-X Groupe Eyrolles, 2003, ISBN : 2-212-11317-X 3 Création de pages dynamiques courantes Dans le chapitre précédent, nous avons installé et configuré tous les éléments indispensables à la mise en œuvre d une

Plus en détail

Le meilleur de l'open source dans votre cyber cafe

Le meilleur de l'open source dans votre cyber cafe Le meilleur de l'open source dans votre cyber cafe Sommaire PRESENTATION...1 Fonctionnalités...2 Les comptes...3 Le système d'extensions...4 Les apparences...5 UTILISATION...6 Maelys Admin...6 Le panneau

Plus en détail

Créer et gérer des catégories sur votre site Magento

Créer et gérer des catégories sur votre site Magento Créer et gérer des catégories sur votre site Magento Version utilisée pour l élaboration de ce guide : Magento 1.3.0 Rédigé par : Olivia Contexte Pour créer un site sous Magento, vous allez être obligé

Plus en détail

Compte Rendu d intégration d application

Compte 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étail

Plateforme Systempay. Intégration du module de paiement pour la plateforme VIRTUEMART 2.0 et supérieur PAIEMENT UNITAIRE Version 1.

Plateforme Systempay. Intégration du module de paiement pour la plateforme VIRTUEMART 2.0 et supérieur PAIEMENT UNITAIRE Version 1. Plateforme Systempay Intégration du module de paiement pour la plateforme VIRTUEMART 2.0 et supérieur PAIEMENT UNITAIRE Version 1.2a Rédaction, Vérification, Approbation Rédaction Vérification Approbation

Plus en détail

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes

Symfony 2. 1.Définition de symfony 2. 2.Installation. 3.Structure. 4.Symfony et les commandes Symfony 2 Sommaire : 1.Définition de symfony 2 2.Installation 3.Structure 4.Symfony et les commandes 5.Le fonctionnement : le routeur (les url), les bundles, twig(templates) 6.L architecture de symfony2

Plus en détail

1. SITE WEB... 2 1.1. HOME... 3 1.2. OFFRES ET DEMANDES... 5 1.3. SUR L'ECHANGE DE COPRODUITS... 6 1.4. CONTATO... 7

1. SITE WEB... 2 1.1. HOME... 3 1.2. OFFRES ET DEMANDES... 5 1.3. SUR L'ECHANGE DE COPRODUITS... 6 1.4. CONTATO... 7 Guide de l'outil Internet dédié au marché des co-produits 1. SITE WEB... 2 1.1. HOME... 3 1.2. OFFRES ET DEMANDES... 5 1.3. SUR L'ECHANGE DE COPRODUITS... 6 1.4. CONTATO... 7 2. ENREGISTRER UN NOUVEL UTILISATEUR/

Plus en détail

Site Web de paris sportifs

Site Web de paris sportifs Conception Nom HENAUD Benoît Numéro d auditeur 05-39166 Version V1.1 Date de mise à jour 15/05/2008 1/18 Table des matières 1. Objectif du document... 3 2. Architecture... 4 2.1. Contraintes techniques...

Plus en détail

Alfresco Guide Utilisateur

Alfresco Guide Utilisateur Alfresco Guide Utilisateur ATELIER TECHNIQUE DES ESPACES NATURELS - 1 Table des matières Alfresco Guide Utilisateur...1 Accéder à la GED de l'aten...3 Via un client FTP...3 Onglet Général...3 Onglet Avancé...3

Plus en détail

TD2-1 : Application client-serveur V2.3.0

TD2-1 : Application client-serveur V2.3.0 TD2-1 : Application client-serveur V2.3.0 Cette œuvre est mise à disposition selon les termes de la licence Creative Commons Attribution Pas d'utilisation Commerciale Partage à l'identique 3.0 non transposé.

Plus en détail

Document d évaluation système

Document d évaluation système CODAZZI Rama DAMOTTE Alan GUI Kai HAMMERER Jérémy TORCK Quentin RICM5 Document d évaluation système Groupe 2 Site de vente de stickers personnalisés My Stick It ETAT DE CHAQUE COMPOSANT : NON REALISE,

Plus en détail

Visual Studio.NET et Visual SourceSafe - Part 3

Visual Studio.NET et Visual SourceSafe - Part 3 Visual Studio.NET et Visual SourceSafe - Part 3 VSS et VS.NET en développement collaboratif Dans cette partie, nous verrons comment mettre en place une base SourceSafe sur un serveur afin que plusieurs

Plus en détail

Gestion des immeubles

Gestion des immeubles RAPPORT DE CONCEPTION Gestion des immeubles BOUSSRHAN YOUSSEF & BENZITI WALID Email : Youssefboussrhan@gmail.com GSM : 0678510690, 0611347597 ISTA NTIC SYBA CRJJ GROUPE B Annexe : Figure 1: Diagramme de

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

Plus en détail

MODULES 3D TAG CLOUD. Par GENIUS AOM

MODULES 3D TAG CLOUD. Par GENIUS AOM MODULES 3D TAG CLOUD Par GENIUS AOM 1 Sommaire I. INTRODUCTIONS :... 3 II. INSTALLATION MANUELLE D UN MODULE PRESTASHOP... 3 III. CONFIGURATION DU MODULE... 7 3.1. Préférences... 7 3.2. Options... 8 3.3.

Plus en détail

Qlik Sense Cloud. Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés.

Qlik Sense Cloud. Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Qlik Sense Cloud Qlik Sense 2.0.2 Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Copyright 1993-2015 QlikTech International AB. Tous droits réservés. Qlik, QlikTech, Qlik Sense, QlikView,

Plus en détail

Serveur d'archivage 2007 Serveur Archivage : Manuel Utilisateur

Serveur d'archivage 2007 Serveur Archivage : Manuel Utilisateur Type du document Manuel utilisateur Auteur(s) Eric Bouladier Date de création 26/03/2007 Domaine de diffusion Illimité Validé par Versions Date Auteur(s) Modifications 1.0 26/03/2007 Eric Bouladier Création

Plus en détail

A. Architecture du serveur Tomcat 6

A. Architecture du serveur Tomcat 6 Administration du serveur A. Architecture du serveur Tomcat 6 La compréhension de l architecture interne du serveur Tomcat 6 est un pré-requis indispensable pour bien en maîtriser l administration et la

Plus en détail

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm

LES COURS ONLINE. ar des étudiants our des étudiants. Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm LES COURS ONLINE P ar des étudiants our des étudiants Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm CAHIER DES CHARGES I - Préface...4 II - Introduction...5 III - Glossaire...6

Plus en détail

Les Utilisateurs dans SharePoint

Les Utilisateurs dans SharePoint Les Utilisateurs dans SharePoint La gestion des utilisateurs dans SharePoint SharePoint dont le cœur est l'outil collaboratif, Windows SharePoint Services. Chaque utilisateur (ou collaborateur) peut créer

Plus en détail

Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe

Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe Documentation de l'application de gestion de courrier évolutive (G.E.D.) pour la Mairie de Voreppe Tony Galmiche le 28 février 2011 (modifiée alb) Sommaire 1 - Accès au portail de l'application GED...3

Plus en détail

Gestion des documents avec ALFRESCO

Gestion des documents avec ALFRESCO Gestion des documents avec ALFRESCO 1 INTRODUCTION : 2 1.1 A quoi sert ALFRESCO? 2 1.2 Comment s en servir? 2 2 Créer d un site collaboratif 3 2.1 Créer le site 3 2.2 Inviter des membres 4 3 Accéder à

Plus en détail

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt Procédure pas à pas de découverte de l offre Service Cloud Cloudwatt Manuel Utilisateur 03/07/2014 Cloudwatt - Reproduction et communication sont interdites sans autorisation 1/45 Contenu 1. Introduction...

Plus en détail

GED MARKETING. Page 1 sur 18

GED MARKETING. Page 1 sur 18 GED MARKETING I. Présentation du produit... 2 II. Page principale de l application... 3 L arbre... 3 Le menu... 4 La fenêtre de navigation... 4 III. La recherche de documents... 4 Rechercher tous les documents...

Plus en détail

WWW.MELDANINFORMATIQUE.COM

WWW.MELDANINFORMATIQUE.COM Solutions informatiques Procédure Sur Comment créer un premier Site SharePoint 2010 Historique du document Revision Date Modification Autor 3 2013-04-29 Creation Daniel Roy 1. But.4 2. Configuration..4

Plus en détail

LES ACCES ODBC AVEC LE SYSTEME SAS

LES ACCES ODBC AVEC LE SYSTEME SAS LES ACCES ODBC AVEC LE SYSTEME SAS I. Présentation II. SAS/ACCESS to ODBC III. Driver ODBC SAS IV. Driver ODBC SAS Universel V. Version 8 VI. Références I. Présentation Introduction ODBC, qui signifie

Plus en détail

TD1. Installation de Symfony 2 et Netbeans

TD1. Installation de Symfony 2 et Netbeans I - Introduction : TD1 Installation de Symfony 2 et Netbeans L objet de ce TP est d installer l environnement de travail. Nous commençons par définir des notions de base nécessaires pour comprendre la

Plus en détail

Wordpress Manuel utilisateur. Manuel utilisateur

Wordpress Manuel utilisateur. Manuel utilisateur Wordpress Manuel utilisateur Projet : WORDPRESS Auteur : Référence : Version : ALEOS2i Date de dernière modification : 13 septembre 2013 2.0 Objet : Manuel utilisateur Table des matières Connexion au BackOffice...3

Plus en détail

gcaddy Suite Description du produit

gcaddy Suite Description du produit gcaddy Suite Description du produit Version 1.0 www.gweb.be @ info@gweb.be TVA : BE-863.684.238 SNCI : 143-0617856-67 1 / 8 1 Description de gcaddy gcaddy est le module E-commerce de Gweb. Il se présente

Plus en détail

Installation de Joomla

Installation de Joomla 1 sur 15 26/05/2008 22:17 Installation de Joomla Ce tutorial décrit les étapes permettant d'installer Joomla (version 1.5.1) sur un serveur d'hébergement. La procédure peut légèrement varier en fonction

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Création d'un site dynamique en PHP avec Dreamweaver et MySQL Création d'un site dynamique en PHP avec Dreamweaver et MySQL 1. Création et configuration du site 1.1. Configuration de Dreamweaver Avant de commencer, il est nécessaire de connaître l'emplacement du

Plus en détail

Mémento professeur du réseau pédagogique

Mémento professeur du réseau pédagogique Mémento professeur du réseau pédagogique 1. Accéder au réseau pédagogique Il suffit quand on vous demande votre nom d utilisateur et votre mot de passe de renseigner ceux-ci. Votre nom d utilisateur est

Plus en détail

Une fois la page chargée, vous devriez vous trouvez sur cette interface :

Une fois la page chargée, vous devriez vous trouvez sur cette interface : 1. Introduction Moodle est une plate-forme d enseignement collaborative en ligne déployée à l Université de Biskra. Elle permet de créer des espaces de cours accessibles depuis Internet où l enseignant

Plus en détail

Plateforme AnaXagora. Guide d utilisation

Plateforme AnaXagora. Guide d utilisation Table des matières 1. PRESENTATION DE LA PLATE-FORME D APPRENTISSAGE ANAXAGORA... 3 2. ARCHITECTURE FONCTIONNELLE... 4 3. L APPRENTISSAGE... 5 3.1. L ESPACE DE TRAVAIL... 5 3.1.1. Le calendrier... 5 4.

Plus en détail

Spécification fonctionnelle Syllabus

Spécification fonctionnelle Syllabus 2013 2014 Université Paris Diderot Paris 7 Master 1 Informatique UFR Informatique Olden Fabre, Cynthia Thimon, Jakub Kaluza, Jean Desravines, Oliver Hamm Spécification fonctionnelle Syllabus -1- TABLE

Plus en détail

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture.

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture. Développement d une application JAVA EE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AZRAGUE Abdelhaq Email : abdlhaqmilan@gmail.com GSM : 00212640108250 Organisme Scolaire : Gestion d'une agence

Plus en détail

KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04

KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04 KUMARASAMY Sandirane Lemont Jérémy Fruitet Robin FOULARD Aymeric BTS 2 SLAM Compte-rendu PPE03 et PPE04 Environnement : Ce projet a été réalisé en deuxième année de BTS, il s'agit d'un travail de groupe

Plus en détail

e)services - Guide de l utilisateur e)carpa

e)services - Guide de l utilisateur e)carpa e)services - Guide de l utilisateur e)carpa 2 Sommaire 1 Introduction 3 2 - Accès au site e)carpa 4 2.1 Identification et authentification 4 2.2 Consultation du site e)carpa 6 2.3 Mode de navigation sur

Plus en détail

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.

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. 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étail

La Gestion Électronique des Documents avec Open ERP

La Gestion Électronique des Documents avec Open ERP La Gestion Électronique des Documents avec Open ERP La Gestion Électronique des Documents avec Open ERP V e r s i o n d u d o c u m e n t V1.0 Introduction...4 I Installer la GED dans Open ERP...5 1 Les

Plus en détail

Plugin Payment-OnLine

Plugin Payment-OnLine Plugin Payment-OnLine Le plugin "Payment-Online" est un plugin technique dont l'objectif est de faciliter l'utilisation du paiement en ligne dans des applications Lutèce. Il se compose d'une librairie

Plus en détail

TD n 1 : Architecture 3 tiers

TD n 1 : Architecture 3 tiers 2008 TD n 1 : Architecture 3 tiers Franck.gil@free.fr 27/10/2008 1 TD n 1 : Architecture 3 tiers 1 INTRODUCTION Ce TD, se propose de vous accompagner durant l installation d un environnement de développement

Plus en détail

Refonte front-office / back-office - Architecture & Conception -

Refonte front-office / back-office - Architecture & Conception - Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table

Plus en détail

Formation au logiciel Typo3, pour les rédacteurs.

Formation au logiciel Typo3, pour les rédacteurs. 1 Formation au logiciel Typo3, pour les rédacteurs. 1 Accéder au système 2 1.1 Configuration du navigateur 2 1.2 Identification 2 2 L interface 2 2.1 Le module Web 3 2.2 Le module Media 3 2.3 Le module

Plus en détail

Développement de Servlets et JSP avec Eclipse

Développement de Servlets et JSP avec Eclipse Développement de Servlets et JSP avec Eclipse Sommaire 1 Mise en place o 1.1 Installation de Galileo o 1.2 Association de Galileo avec une installation de Tomcat o 1.3 Pilotage des serveurs 2 Développement

Plus en détail

E-LECLERC LEVALUATION DU SITE WEB. A. Evaluation «subjective» du site web. 1. Choix du site web. 2. Présentation le site A P I 0 8 1 1 / 0 3 / 2 0 1 4

E-LECLERC LEVALUATION DU SITE WEB. A. Evaluation «subjective» du site web. 1. Choix du site web. 2. Présentation le site A P I 0 8 1 1 / 0 3 / 2 0 1 4 LEVALUATION DU SITE WEB E-LECLERC A P I 0 8 1 1 / 0 3 / 2 0 1 4 A. Evaluation «subjective» du site web 1. Choix du site web J ai choisi de réaliser l évaluation «subjective» sur le site web : www.e-leclerc.com,

Plus en détail

INFORM :: DEMARRAGE RAPIDE A service by KIS

INFORM :: DEMARRAGE RAPIDE A service by KIS - Création d'un formulaire Ce petit mémo a pour but de donner une vue d'ensemble des étapes menant à la création d'un formulaire avec in- Form. Bien que générique ce document fournit également les informations

Plus en détail

GESTION DES BONS DE COMMANDE

GESTION DES BONS DE COMMANDE GESTION DES BONS DE COMMANDE P1 P2 Table des Matières LA GESTION DES BONS DE COMMANDE 4 PREMIERE EXECUTION DU LOGICIEL 5 DEFINITION DES PARAMETRES 8 Services 9 Comptes Utilisateurs 10 Adresse de livraison

Plus en détail

BAAN IVc. Guide de l'utilisateur BAAN Data Navigator

BAAN IVc. Guide de l'utilisateur BAAN Data Navigator BAAN IVc Guide de l'utilisateur BAAN Data Navigator A publication of: Baan Development B.V. B.P. 143 3770 AC Barneveld Pays-Bas Imprimé aux Pays-Bas Baan Development B.V. 1997 Tous droits réservés. Toute

Plus en détail

GUIDE DE DEMARRAGE SP Plus

GUIDE DE DEMARRAGE SP Plus GUIDE DE DEMARRAGE SP Plus Secteur public Version 1.2 31/08/2011 Ce document et son contenu sont strictement confidentiels et la propriété de Natixis Paiements. Il n est pas contractuel. Toute reproduction

Plus en détail

BOSTONI Sacha NGUYEN Linh. Rapport de projet : Annuaire des anciens élèves

BOSTONI Sacha NGUYEN Linh. Rapport de projet : Annuaire des anciens élèves BOSTONI Sacha NGUYEN Linh Rapport de projet : Annuaire des anciens élèves Tuteur : Mr Muller Mai 2007 SOMMAIRE Introduction 1/ Les utilisateurs du site 2/ Les fonctionnalités 3/ La réalisation Conclusion

Plus en détail

Scolasite.net, le créateur de site web au service des enseignants. Guide d'administration du site Internet. Page 1

Scolasite.net, le créateur de site web au service des enseignants. Guide d'administration du site Internet. Page 1 Guide d'administration du site Internet Page 1 Scolasite permet de créer rapidement un site Internet, sans connaissances techniques particulières. Spécialement destiné aux établissements scolaires, son

Plus en détail

L Interface d Administration des sites. www.admin.ecoledirecte.com. Documentation

L Interface d Administration des sites. www.admin.ecoledirecte.com. Documentation L Interface d Administration des sites www.admin.ecoledirecte.com Documentation 1 Sommaire : Présentation...3 La connexion au site...3 La page d accueil...4 Les statistiques...4 Le forum...6 L administration

Plus en détail

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO _TUTO_module_magento Table des matières -1) - :...2-1.1) Introduction :...2-1.2) Description :...3-1.2.1) Schéma :...3-1.3) Mise en place :...4-1.3.1) MAGENTO :...4-1.3.1.1) Les Web Services :...4-1.3.1.2)

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

1 Documentation FastSite. Documentation FastSite

1 Documentation FastSite. Documentation FastSite 1 Documentation FastSite Documentation FastSite 2 Documentation FastSite Sommaire A propos... 3 Les prestations de la plateforme... 3 Les informations pré-requises... 4 Le fonctionnement... 6 Les langues...

Plus en détail

Présentation du site internet EcoleDirecte

Présentation du site internet EcoleDirecte Présentation du site internet EcoleDirecte La vie scolaire de votre enfant sur https://www.ecoledirecte.com Janvier 2013 SOMMAIRE 1 PRESENTATION DU SITE INTERNET ECOLEDIRECTE DEDIE AUX FAMILLES ET AUX

Plus en détail

Formation : WEbMaster

Formation : 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étail

14.1. Paiements et achats en ligne

14.1. Paiements et achats en ligne Chapitre 14 Sécurité et Internet Si Internet vous permet de vous connecter et d accéder à des services et des sites du monde entier, il est important aussi de comprendre qu une fois connecté au Web votre

Plus en détail

Manuel d utilisation de la messagerie. http://zimbra.enpc.fr

Manuel d utilisation de la messagerie. http://zimbra.enpc.fr Manuel d utilisation de la messagerie http://zimbra.enpc.fr ÉCOLE DES PONTS PARISTECH/ DSI JANVIER 04 SOMMAIRE. Connexion à la messagerie.... Présentation générale de l écran d accueil.... Déconnexion...

Plus en détail

JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML

JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML BALLOTE Nadia FRIULI Valerio GILARDI Mathieu IUT de Nice Licence Professionnelle des Métiers de l Informatique RAPPORT DU PROJET : JXDVDTek - UNE DVDTHEQUE EN JAVA ET XML Encadré par : M. CRESCENZO Pierre

Plus en détail

FileSender par RENATER - Guide utilisateur

FileSender par RENATER - Guide utilisateur FileSender par RENATER - Guide utilisateur Filesender par RENATER est un service de transfert sécurisé de fichiers volumineux à disposition des utilisateurs de la communauté de l'enseignement supérieur

Plus en détail

Nuage Cloud notions, utilisation

Nuage Cloud notions, utilisation Page:1 Cours pour utilisation simple du Cloud Table des matières 1-Généralités...2 1.1-Les principales fonctionnalités...2 2-Les solutions proposées...4 2.1-Choix du fournisseur...4 2.2-Installation de

Plus en détail

Manuel d'utilisation de l'espace d'e-learning de LaboCoop Novembre 2014

Manuel d'utilisation de l'espace d'e-learning de LaboCoop Novembre 2014 Manuel d'utilisation de l'espace d'e-learning de LaboCoop Novembre 2014 Table des matières Accès à l'espace d'e-learning...2 Login et mot de passe de la plateforme...2 Description générale de l'interface

Plus en détail