Luận văn thạc sĩ VNU projet ClipackSRM

60 1 0
Luận văn thạc sĩ VNU projet ClipackSRM

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Institut de la Francophonie pour l'Informatique Rapport du stage Projet “ClipackSRM” La couche de Présentation Génération de rapports Responsable du stage: Erwan Tesson Stagiaire: Mai Thuy Nga Chef de Projet Etudiante de Promotion 7, IFI LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack TABLE DES MATIERES REMERCIEMENTS .5 RESUME .6 ABSTRACT CHAPITRE : INTRODUCTION PROBLEMATIQUE MOTIVATION OBJECTIF DU STAGE ENVIRONNEMENT DE STAGE .8 4.1 Société Clipack 4.2 Projet ClipackSRM CHAPITRE : ARCHITECTURE ET SOLUTION DU PROJET 10 ARCHITECTURE DE L’APPLICATION CLIPACKSRM 10 DESCRIPTION DES COMPOSANTS DE L’ARCHITECTURE 11 COUCHE DE PERSISTANCE 13 3.1 Persistance avec Object Relational Mapping (ORM) 13 3.2 Architecture ORM 13 3.3 Oracle9iAS Toplink 14 COUCHE METIER 14 COUCHE DE PRESENTATION 16 5.1 Le modèle MVC 16 5.2 Appliquer le modèle MVC dans l’application Clipack 17 TECHNOLOGIES XML .18 6.1 Généralités XML 18 6.2 Valider Document XML avec DTD 18 6.3 Parseur XML (DOM et SAX) 19 6.4 Généralités XSL .19 CHAPITRE : IMPLEMENTATION DE LA COUCHE DE PRESENTATION 20 VUE DU CLIENT AVEC XML/XSL 20 IMPLEMENTATIONS 21 2.1 Diagramme de état/activité 21 2.2 L’interface du client dans ClipackSRM 22 2.3 Les diagrammes de séquences et de classes 23 MECHANISME D’INTERNATIONALISATION DE CLIPACK .26 3.1 Multilangues 26 3.2 Implémentation 27 IMPORTER/EXPORTER DE DONNEES 29 4.1 Généralité 29 4.2 Exporter données en document XML et Excel 31 4.3 Importer des données utilisant Document XML 33 MENU MULTI-NIVEAUX AVEC XML/XSL ET JAVASCRIPT/CSS 35 5.1 Les caractéristiques de Menu multi-niveaux 35 5.2 Implémentation 37 CHAPITRE : MECANISME POUR GENERER DES RAPPORT A PARTIR DE “TEMPLATE » 40 PAGINATION DES DOCUMENTS ET DES RAPPORTS 40 MAI Thuy Nga 2/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack ARCHITECTURE XSL-FO 40 GENERATEUR DE RAPPORTS AVEC XSL-FO (FOP) 41 3.1 Création de Datasheet Template .42 3.2 Générer la source XML partir de objets Java (DatasheetTemplate) 46 3.3 Rapport Datasheet Template avec XSL-FO 48 3.4 Résultats 50 CHAPITRE : CONCLUSION .51 ANNEXES .52 LE FICHIER XSL POUR LE MENU MULTI NIVEAU .52 LE FICHIER XSL FO POUR LES RAPPORTS 55 GLOSSAIRE 58 BIBLIOGRAPHIE 60 MAI Thuy Nga 3/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack TABLE DES FIGURES Figure 1: Figure 2: Figure 3: Figure 4: Figure 5: Figure 6: Figure 7: Figure 8: Figure 9: Figure 10: Figure 11: Figure 12: Figure 13: Figure 14: Figure 15: Figure 16: Figure 17: Figure 18: Figure 19: Figure 20: Figure 21: Figure 22: Figure 23: Figure 24: Figure 25: Figure 26: Figure 27: Figure 28: Figure 29: Figure 30: MAI Thuy Nga Diagramme Multi couches dans ClipackSRM 10 Architecture des ClipackSRM composants 11 Architecture ORM _ 13 Un exemple d’utilisation pattern Factory avec les objets BO et PState 15 Modèle MVC _ 16 Design Pattern MVC dans ClipackSRM 17 Workflow de transformation XSL _ 20 Diagramme de état/activité 21 L’interface du client dans ClipackSRM 22 Diagramme de séquences pour la couche de présentation 23 Diagramme de classes pour la couche de présentation 24 Schéma relationnel de la base de données pour la localisation 27 Diagramme de séquences pour la localisation _ 28 Schéma pour Exporter Catégories (XML/Excel) 29 L’exemple du module Export de Catégories vers Excel 31 Export dans le format XML (généré par ClipackSRM) 32 Export vers Excel (généré par ClipackSRM) 32 L’exemple du module Importer de Catégories _ 33 Le menu multi-niveaux _ 36 Génération de menu multi-niveaux 37 Le schéma pour le document XML multi-niveaux _ 38 Workflow de Transformation XSL FO _ 41 Workflow du module Génération de rapports 42 Utilisation d’outil «Toplink Mapping Workbench» _ 43 Interface de la création d’un Datasheet Template 44 Diagramme de séquence de création DatasheetTemplate avec Toplink 45 Le diagramme de classes pour générer la source XML partir de objets Java 47 Diagramme de séquences pour générer la source XML partir de objets Java48 Diagramme de séquences pour générer un rapport _ 49 Un exemple de rapport d’un Produit (générer par Clipack) 50 4/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack Remerciements Je tiens tout d’abord remercier Messieurs Marc Dufour et Erwan Tesson de m’avoir donné la chance d’intégrer la société Clipack ainsi de leurs soutiens et de leur confiance Je cite plus particulièrement Monsieur Laurent Foret ingénieur développeur Clipack d’avoir été présent pour répondre mes questions Il m’a beaucoup aidé comprendre les problèmes techniques Je remercie également Monsieur Laurent Berteau responsable informatique pour ses conseils et ses soutiens tout au long de mon stage J’exprime mon entière reconnaissance ma famille et mes amis pour leurs aides, leurs encouragements MAI Thuy Nga 5/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack Résumé Ce rapport rend compte du stage que j’ai pu effectué pendant mois dans la société Clipack Dans ce temps, j’ai déjà participé l’équipe de développement du projet ClipackSRM, c’est un logiciel utilisant les technologies Internet pour optimiser les pratiques Achats en particulier pour le secteur CPG, Consumer Packaged Goods : agro-alimentaire, pharmacie, cosmétique, etc D'abord, je présente l'architecture de couches du projet, les choix de conception et d'implémentation effectués dans chaque couche Ensuite, je développe la couche de Présentation et les modules concernant comme la localisation d'interface, l'importer/exporter de données entre client et système En fin, je construis un mécanisme pour générer les rapports en utilisant la technologie XSL-FO Abstract This thesis has reported my working as the final practice for months at Clipack Company During this time, I have involved in a development team of the project ClipackSRM, pure-internet software enables your enterprise to optimize Product Development and Purchasing processes for Consumer Product Goods The first assignment, I present the project’s layering architecture, the reasonable selection of the design and implementation for each layer Then, I develop the Presentation layer and its related modules such as Interface localization, import/export data between client and system And last, I construct the reporting mechanism using XSL-FO technology that supports the system to define and generate a printable report for its entities MAI Thuy Nga 6/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack CHAPITRE : INTRODUCTION Problématique La tendance traditionnelle est changée complètement par les technologies Internet On a créé un marché sans frontière sur l’Internet où permet tous les clients de chercher et acheter des marchandises leur bureau, particulièrement ces transactions ont lieu dans le temps réel Ces applications sont appelées « e-commerce application » et utilisées sur la plat-forme Web ClipackSRM est une de ces applications dédié aux industries du secteur CPG-Consumer Packaged Goods (agroalimentaire, cosmétique, pharmacie, électronique grand public, etc.)…, elle fournit des outils pour aider fournisseurs et clients mieux se comprendre afin d’élaborer plus efficacement leurs produits Le but est d’établir une relation gagnant-gagnant par l’intermédiaire de ce système de communication ouvert Cette application utilise la technologie J2EE, son architecture est divisée en trois couches principales: • Couche de présentation • Couche métier • Couche de persistance La couche de présentation est responsable de créer l’interface utilisateur, c’est dire générer et diffuser les pages Web affichées sur un navigateur Elle joue un rôle très important dans toute l’application, elle doit s’adapter quelques critères comme le temps d’affichage, l’attirance, le dynamisme, Nous voudrons donc trouver un mécanisme pour construire une couche de présentation avec la meilleure performance De plus, nous souhaitons ajouter un nouveau module qui est responsable de générer des rapports sous forme des fichiers PDF, XML … Motivation Après avoir fini le cours DEPA en Informatique l’IFI, nous faisons un stage d’une durée de six mois environ Il y a deux types du stage: développement ou recherche Depuis longtemps, les applications d’entreprise m’intéressent beaucoup Pour attirer plusieurs clients, ces logiciels doivent faire concurrence aux autres, ils ont donc des solutions optimisées de technologie Clipack est une jeune société, son orientation est de faciliter les relations B2B (Business-toBusiness) dans le domaine des achats, son application développée en Java s’appuie sur une base de données accessible sur Internet et mise jour en temps réel par et pour les utilisateurs C’est la raison pour laquelle j’ai choisi le premier type de stage et participé l’équipe de développement du projet ClipackSRM Cela m’apporte certains intérêts: - Acquérir rapidement une réelle compétence pratique dans la conception d'applications J2EE - Apprendre les nouvelles technologies concernées par le projet: XML, XSL et XSL-FO, Oracle, designs pattern … - Acquérir les expériences de travail en équipe MAI Thuy Nga 7/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack Objectif du stage Effectué dans le cadre du DEPA, ce stage a pour but de découvrir les responsabilités, les contraintes mais aussi le déroulement d’un projet de sa conception sa réalisation C’est l’occasion également de mieux appréhender les différents aspects de la vie professionnelle Concrètement, mes travaux Clipack sont: - Saisir le business de l’application ClipackSRM - Faire des recherches avec l’architecture du projet - Concevoir les modules logiciels utilisant UML - Implémenter les deux parties ci-dessous utilisant les technologies Java, XSL/XML o La couche de présentation de l’application o Le mécanisme génère des rapports sous forme PDF, Excel, XML - Intégrer dans le projet Environnement de stage 4.1 Société Clipack Clipack est une société dédiée l’optimisation de la gestion des achats d’article complexes (carton, plastique, aluminium, etc.) grâce aux technologies Internet Créée la fin de l’année 2000, Clipack est aujourd’hui une équipe d’une dizaine de personnes disposant d’une double expérience de terrain dans le domaine des achats techniques complexes (emballages notamment) et une expertise technologique de pointe Les actionnaires principaux de Clipack sont constitués de fonds d'investissement indộpendants ayant pour objectifs dassurer de faỗon pộrenne le développement d’une entreprise innovante dans un secteur en pleine mutation Institut Rộgional de Dộveloppement Industriel Socri Clipack a reỗue dès début 2001 la qualification d' " entreprise innovante " de la part de l’Anvar (Agence Nationale de Valorisation de la Recherche) qui participe en outre son développement travers des aides financières significatives Le Conseil Régional d’Aquitaine a également soutenue financièrement l’entreprise dès ses débuts Clipack a conclu divers partenariats afin d’approfondir son expertise métier et technologique, notamment avec ; Ecole Supérieure d’Ingénieurs en Emballage et Conditionnement Oracle MAI Thuy Nga 8/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack 4.2 Projet ClipackSRM ClipackSRM est un logiciel de Supplier Relationship Management dédié aux industries du secteur CPG-Consumer Packaged Goods (agroalimentaire, cosmétique, pharmacie, électronique grand public, etc.) Il est destiné particulièrement traiter les questions de création des spécifications techniques et d’achats des articles concernés ClipackSRM est un logiciel collaboratif utilisant pour la communication entre utilisateurs les technologies Internet Il est proposé sous forme de modules pour adresser différentes fonctionnalités : PackStudio : pour administrer l'application et, en particulier, modéliser les règles qui seront appliquées par les autres modules PackDesign : pour spécifier collaborativement (en interne et avec les fournisseurs) ses articles en respectant un ensemble de règles (métier, validation, etc.) PackSpecs : pour gérer toutes les spécifications (techniques, logistiques, qualité, etc.) des articles achetés PackSpecs permet de visualiser facilement les informations pertinentes et de les mettre en forme PackIntelligence : pour analyser les données sous une forme synthétique (tableaux, graphiques, statistiques, etc.) et prendre les bonnes décisions de développement et d’achat de produits complexes PackTender : pour mettre en concurrence les fournisseurs (RFI, RFQ, appels d’offres, enchères inversées, etc.) PackTender peut être utilisé seul ou se connecter d’autres opérateurs (places de marché, outils de e-sourcing, etc.) PackOrder : pour lier le système de commandes de l’entreprise avec les spécifications techniques des articles et l’enrichir avec des fonctions de gestion collaborative d’évènements MAI Thuy Nga 9/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack CHAPITRE : ARCHITECTURE ET SOLUTION DU PROJET Architecture de l’application ClipackSRM Aujourd’hui, les applications Web, et surtout les applications d’entreprise, sont de plus en plus complexes et variées Les développeurs et consultants de logiciel dépensent beaucoup de temps pour créer des applications d’entreprise qui ont la meilleure efficacité dans la phase de développement et ainsi dans la phase de maintient du projet Pour éviter de "réinventer la roue", nous devrions considérer comment on peut réutiliser et intégrer les technologies et les composants business pour définir notre architecture Les composants business nous permettent de développer la logique business en utilisant un ensemble d'interfaces et de remplacer des fonctionnalités avec des nouvelles versions De plus, nous pouvons utiliser les dernières implémentations supportées par les fournisseurs Cette solution s'assure que le projet tient « up-to-date » avec les nouvelles technologies L’application d’entreprise ClipackSRM comme toute application J2EE est une architecture multicouches L’idée de cette architecture est de séparer clairement les différents niveaux de traitements informatiques nécessaires pour la mise en œuvre d’une application Application Design Level Project Implementation Level Client layer Web layer Business layer HTML pages css/javascript JSP/Servlet Business Object Managers XSL Processor Business Objects Database layer ORM (Toplink) Database Persistence Objects Figure 1: Diagramme Multi couches dans ClipackSRM Dans ce diagramme, le premier niveau désigne les principales couches du projet en phase de développement, le deuxième niveau désigne le détail des technologies qui sont utilisées dans chaque couche du projet Avec ce workflow, ClipackSRM a les caractéristiques suivantes: - L’application est généralement divisée en trois couches principales et elles s’appliquent résoudre les problématiques suivantes: + La présentation de l’information l’utilisateur (couche de présentation) + La résolution des problématiques relatives au métier des utilisateurs (couche métier) + La persistance des données traitées par l’application (couche de persistance) MAI Thuy Nga 10/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack - L’utilisateur valide ces informations pour le DatasheetTemplate courrant - Les informations validées sont transférées aux objets BOManager.qui les traite, en suite crée les objets BO correspondants et les rend persiste dans la base de données - Création d’un DatasheetTemplate utilise aussi Transaction avec UnitOfWork/Toplink pour écrire des données dans la base de données 3.2 Générer la source XML partir de objets Java (DatasheetTemplate) Comme technologie XSL-FO, l’entrée du Processeur FO est une source XML Dans le système, on n’a que les objets « pure Java », il faut donc avoir besoin un module pour convertir les objets Java en documents XML On cite quelques faỗons: - Le plus facile, on peut convertir les objets Java en « XML-formatted String » Cette solution est appliquée dans les parties précédents comme dans la module Exporter Categorie - On peut utiliser API DOM pour construire un document XML quand on lit chaque attribut d’objet Java - On peut utiliser API SAX pour générer un événement XML Avec les deux méthodes premières, on doit diviser la tache en deux phares, un pour créer le document XML et l’autre pour parseur Avec la méthode dernière, on peut utiliser « XML Reader » supportant par la librairie Xalan pour lire un objet Java selon la faỗon XML, linformation est gộnộrộe comme un événement SAX et le Processeur XSL peut le traiter Grâce cela, la performance est améliorée beaucoup Voici le diagramme de séquences pour générer la source XML partir d’objet Java MAI Thuy Nga 46/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes XMLReader (from sax) SimpleContentHandler (from datasheet) AbstractObjectReader (from datasheet) AbstractObjectReader() getContentHandler() setContentHandler() getErrorHandler() setErrorHandler() getDTDHandler() setDTDHandler() getEntityResolver() setEntityResolver() getProperty() setProperty() getFeature() isNamespaces() isNamespacePrefixes() setFeature() parse() parse() Clipack #handler DatasheetTemplateReader (from datasheet) parseFromInputSource() parseFromDatasheetTemplate() generateSAXEventsForDatasheetTemplate() generateSAXEventsForHeader() generateSAXEventsForInfo() generateSAXEventsForImage() generateSAXEventsForClassFeature() generateSAXEventsForFeature() init() EasyGenerationContentHandlerProxy() startElement() startElement() characters() endElement() element() element() setDocumentLocator() startDocument() endDocument() startPrefixMapping() endPrefixMapping() startElement() endElement() characters() ignorableWhitespace() processingInstruction() skippedEntity() InputSource (from sax) DatasheetTemplateInputSource (from datasheet) DatasheetTemplateInputSource() getDatasheetTemplate() setDatasheetTemplate() Figure 27: Le diagramme de classes pour générer la source XML partir de objets Java MAI Thuy Nga 47/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes : FOPManager DTInputSource : DatasheetTemplateInputSource XalanSAXSource : SAXSource Clipack XMLReader : DatasheetTemplateReader render(DatasheetTemplate) DatasheetTemplateInputSource(DatasheetTemplate) init( ) setXMLReader(DTReader ) setInputSource(DTInputSource) generateSAXSource( ) parseFromInputSource(InputSource) generateSAXEventsForDatasheetTemplate(DatasheetTemplate) generateSAXEventsForHeader(Header) generateSAXEventsForClassFeature(ClassFeature) return XMLSAXSource( ) Generate SAX Events from other attributes here return XMLSAXSource( ) Dispatch the XML Source to the XSL Processor Figure 28: Diagramme de séquences pour générer la source XML partir de objets Java 3.3 Rapport Datasheet Template avec XSL-FO Ce modèle utilise le DatasheetTemplate résultant de la section ci-dessus pour créer un rapport d’une entité produit spécifique La feuille XSL-FO pour DatasheetTemplate On peut voir La feuille XSL-FO pour DatasheetTemplate dans la partie Annexes MAI Thuy Nga 48/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack Diagramme de séquences pour générer un rapport DatasheetTemplate Ce diagramme de séquence décrit comment le Générateur Datasheet (XSL FOP) stocke des données XML de couche Business et en suite fusionne avec XSL-FO pour créer un rapport PDF sur le navigateur WebLayer : DatasheetTemplateServlet : User ProductManager : ProductManager DatasheetTemplateManager : DatasheetTemplateManager DatasheetGenerator : DatasheetGenerator FOPManager : FOPEJB Xalan : XMLReader Xalan : XSLProcessor selectProduct( ) getLocale( ) getUser( ) getById( ) getByProductID( ) generateDatasheet( ) generateHeaders( ) create and return Datasheet Object (connect to BO Managers) from Stylesheet generateImages( ) generateClassFeatures( ) getXsl( ) Generate XML Document from a Java Object render(portal.bo.Datasheet, String) generateXMLDocument(portal.bo.Datasheet) render( ) to create PDF contentType transform( ) returnPDF Figure 29: Diagramme de séquences pour générer un rapport Afin de générer un report pour un produit spécifique, l’utilisateur doit suivre les étapes suivantes: - Utilisateur charge le page de création des rapports et choisit un produit - Système connecte au ProductManager pour récupérer l’ensemble des informations du produit - Système connecte aussi au DatasheetTemplateManager pour charger Datasheet Template de ce type du produit - Avec les deux types de l’information, DatasheetGenerator les traite dans un autre objet qui accorde au processus prochain (c’est l’objet Datasheet) - Dans cette étape, on prend le fichier XSL-FO pour mettre en page le rapport - L’objet Datasheet et fichier XSL-FO sont transfères au FOP EJB (FOP Manager) Cette classe est responsable de générer un document XML partir de l’objet Datasheet - Le document XML et fichier XSL-FO sont transfère Xalan (Apache FOP) pour transformer en fichier PDF Ce fichier PDF est le rapport final MAI Thuy Nga 49/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack 3.4 Résultats Figure 30: Un exemple de rapport d’un Produit (générer par Clipack) MAI Thuy Nga 50/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack CHAPITRE : CONCLUSION Ce stage s’est déroulé en deux étapes: D’abord sur une première période où j’ai travaillé sur l’architecture de l’application en global, j’ai fait des recherche sur les technologies qui concerne le projet comme J2EE, XML, Ensuite une deuxiốme pộriode oự jai conỗu les modules utilisant UML et les implémente utilisant Java, XML/XSL Aujourd’hui, ces nouveaux développements sont déjà validées et intégrées au projet Ils s’adaptent plusieurs critères que l’on a proposés Voici quelques résultats obtenus: • L’interface graphique de l’application est conviviale, s’accorde la logique métier • L’application supporte des langues différentes • Le menu est vraiment dynamique avec les données partir de la base de données • Le temps d’affichage du menu et de réaliser des fonctionnalités est acceptable malgré la grande taille de la base de données • Le mécanisme pour générer des rapports aide au client de créer des rapports qui sont très beaux et se contiennent les informations choisies Ce projet m’a beaucoup apporté car il m’a permis de mettre en pratique des méthodes ainsi que d’autres acquis souvent restés au stade de la théorie L’intérêt de ce projet a été de travailler avec les technologies J2EE et XML qui sont appréciés par leur puissance De plus, ce stage m’apporte l’occasion de travailler au sein d’une équipe et aussi de côtoyer, au sein d’un même objectif, des personnes aux compétences diverses Dans futur, je souhaite continuer faire des recherches avec des nouvelles technologies et les mettre en oeuvre dans les applications réelles MAI Thuy Nga 51/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack ANNEXES Le fichier XSL pour le Menu multi niveau Pack SRM :: Haut de page et menus ]]> Modify stylesheet each time a new menu or sub-menu is added blancBandeau{ font-family : Verdana,Helvetica,sans-serif; font-size : 11px; text-decoration : none; color:#FFFFFF; } MAI Thuy Nga 52/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack javascript:openHelpWindowFR(true); javascript:openHelpWindowES(); oCMenu.makeMenu('help_','','','','_top',50,20,'','','clLevel06','clLev el06','','','','') oCMenu.makeMenu('quit_','','','logout.jsp','_top',60,20,'','','clLevel 07','clLevel07') oCMenu.construct() top.content.location.reload() clLevel0 clDisable0 clLevel1 clDisableOver0 _ wait.jsp?event=&fromFrame=controlPanel oCMenu.makeMenu('','','','','','','','','','','') MAI Thuy Nga 53/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack &= /misc/bandeaux/ /misc/bandeaux/background_default.jpg #898C8D MAI Thuy Nga 54/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack Le fichier XSL FO pour les rapports 130pt MAI Thuy Nga 55/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack 100pt 130pt 100pt 130pt 100pt 130pt 100pt Page () MAI Thuy Nga 56/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack 100pt 100pt : : MAI Thuy Nga 57/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack GLOSSAIRE BO: Abréviation pour Business Objet C’est une classe qui contient un PState, mais lui rajoute des fonctionnalités métiers Un BO ne peut pas gérer seul sa persistance Il est créé par un Manager et ne peut être sauver en base ou supprimé que par ce dernier PState: On appelle PState toute classe directement mappée avec une ou plusieurs tables en base de données La responsabilité d’un PState est de contenir des données Il ne doit pas l’enrichir de traitements complexes propre au domaine métier Cette tâche est remise au BO associé au PState Couche BO: C’est la couche se situant juste au-dessus de la couche de persistance Elle tire partie de cette dernière pour récupérer des données brutes et leur ajoute une signification métier Couche de persistance: C’est un terme qui désigne l’ensemble des classes dont la responsabilité est de permettre aux couches plus hautes de communiquer avec la base de données C’est une notion fondamentale du travail présenté dans ce rapport Une couche de persistance bien faite doit permettre de passer d’un enregistrement en base un objet et vice-versa de manière ce que les utilisateurs qui utilisent son API ne puissent travailler qu’avec des objets, sans se soucier de notions propres aux SGBD (Système de Gestion de Base de données), ou se référer au langage SQL DAO: Certaines classes sont des DAO, c’est dire des Data Access Object Elles sont liées un PState particulier et se chargent de gérer leur persistance, et en générale toutes les interactions en base impliquant leur PState Manager: C’est en quelques sortes l’équivalent du DAO pour un BO Toutes les interactions en base avec un BO se font dans le manager qui lui est associé ORM (Object Relational Mapping): un mapping Objet/Relationnel est un moyen de faire correspondre une classe Java avec une ou plusieurs tables d’une base de données La classe est alors appelée une classe persistante, ou PState Un mapping prend souvent la forme d’un fichier XML qui sera lu par une classe propre la solution de mapping afin d’en ressortir une session, qui servira de tampon: elle transformera des opérations génériques de recherche, mise jours et suppression en requêtes SQL de manière transparente pour l’utilisateur http://www.service-architecture.com/products/object-relational_mapping.html Toplink: Nouvelle solution de mapping prônée par Clipack Elle est distribuée par Oracle, qui l’a récemment achetée Le but du stage était de passer de l’ancienne solution de mapping celle en Toplink http://otn.oracle.com/products/ias/toplink CSS : Cascading Style Sheet en franỗais 'Feuille de Styles' est un simple mécanisme pour ajouter les styles de format comme police, couleur dans les documents Web http:www.w3.org/Style/CSS/ JSP: Technologie permettant la prise en charge de contenus dynamiques sur un site Web Une page Web dynamique est décrite par un fichier jsp qui contient du code HTML, et du code Java http://java.sun.com/products/jsp MAI Thuy Nga 58/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack XML: Extensible Markup Language est un format de représentation structurée de l’information défini par le W3C XML est un standard largement utilisé pour définir la structure et le contenu des données par un ensemble de balises http://www.w3.org/XML XSL: (eXtensible StyleSheet Language), un langage de feuilles de style extensible développé spécialement pour XML Il comprend trois parties : un langage pour transformer des document XML (XSLT), un langage d’expressions utilisé par XSLT pour accéder des parties d’un document XML (Xpath) et un vocabulaire XML spécifiant la sémantique de mise en forme (XSL-FO) http://www.w3.org/Style/XSL CoolMenu: Librairie libre de JavaScript pour afficher un menu dynamique sur un navigateur http://www.dhtmlcentral.com/projects/coolmenus/ JUnit: Le framework pour les tests unitaires dans Java http://www.junit.org MAI Thuy Nga 59/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack BIBLIOGRAPHIE • Antoine Mirecourt & Pierre Yves Saumont, Le Développeur JAVA 2, édition 1999, OSMAN EYROLLES • Dominique Liard www.infini-fr.com: Infini l’Encyclopédie, mise jour 01/09/2003 • Erich Gamma, Richard Helm, Ralph Johnson et John Vlissides DESIGN PATTERNS catalogue de modèles de conception réutilisables, édition 1995, ADDISON – WESLEY PUBLISHING Company • Elliotte Rusty Harold, XML Bible 2nd Edition 2001, HUNGRY MINDS Inc • XML et les applications d’entreprise, www.application-servers.com • XSLT Programmer’s Reference 2nd Edition, Michael Key, WROX PUBLISHING • Making XML Look Good in Print XSL-FO 1ere Edition, Dave Pawson MAI Thuy Nga 60/60 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... 4.1 Société Clipack 4.2 Projet ClipackSRM CHAPITRE : ARCHITECTURE ET SOLUTION DU PROJET 10 ARCHITECTURE DE L’APPLICATION CLIPACKSRM 10 DESCRIPTION DES... VAN CHAT LUONG download : add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack 4.2 Projet ClipackSRM ClipackSRM est un logiciel de Supplier Relationship Management dédié... add luanvanchat@agmail.com DEPA Rapport de Projet de Fin d’Etudes Clipack CHAPITRE : ARCHITECTURE ET SOLUTION DU PROJET Architecture de l’application ClipackSRM Aujourd’hui, les applications Web,

Ngày đăng: 06/12/2022, 15:45