Travaux Pratiques : Lucène - Gestion d un index plein texte

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

Download "Travaux Pratiques : Lucène - Gestion d un index plein texte"

Transcription

1 Chapter 1 Travaux Pratiques : Lucène - Gestion d un index plein texte Pour ce TP, nous allons étudier l utilisation d un index de recherche textuel OpenSource : Lucene 1. Nous allons créer un projet en Java qui va indexer un ensemble de documents et nous permettre de regarder le contenu des résultats retourner par des requêtes textuelles. 1.1 Indexation 1. Créer un projet Java sous eclipse 2. Télécharger et intégrer le package lucene : traversn/lucene/lucene zip Contenu intéressant de l archive : lucene-core jar : Package coeur de la plateforme Lucène documents contrib : main packages analyzers : Analysers de texte pour extraire les mots en fonction de la langue (luceneanalyzers jar). Indispensable pour l indexation et l interrogation. collation: Change l analyser lucène pour optimiser les tris et les requêtes par intervale. db : Base de données berkeleydb instantiated : Index lucene en mémoire centrale queryparser : Permet de modifier le query parser snowball : Package de lemmatisation du texte en fonction de la langue. spellchecker : Verifie l orthographe des mots et propose des corrections spatial : Classement des résultats en fonction du fonction de score spatiale wordnet : Dictionnaire Wordnet permet de vérifier si un mot est contenu dans celui-ci et d en extraire des synonymes. importez les packages lucene-core jar et lucene-analyzers jar (contrib/analyzer) 3. Ci-dessous, quelques fonctions java pour la création et fermeture de l index (s il vous manque les noms des packages générez les via eclipse) : 1 Site officiel : 1

2 String directory = "index"; //Writing object, linked to the repository org.apache.lucene.index.indexwriter writer = null; /* Open or create the index */ protected void openindex(boolean newindex) throws CorruptIndexException, IOException { //Link the directory on the FileSystem to the application Directory d = FSDirectory.open(new File(directory)); try { //Verifies if the index has already been locked (or not closed properly). if (IndexWriter.isLocked(d)) IndexWriter.unlock(d); if (writer == null) //Link the repository to the IndexWriter writer = new IndexWriter(d, new StandardAnalyzer(Version.\lucene{_30), newindex, IndexWriter.MaxFieldLength.LIMITED); catch (FileNotFoundException e) { writer = new IndexWriter(d, new StandardAnalyzer(Version.\lucene{_30), true, IndexWriter.MaxFieldLength.LIMITED); Pour fermer l index, il faut d abord l optimiser et ensuite le fermer. // Compact and flush the index on the repository public void writeindex() throws CorruptIndexException, IOException { writer.optimize(); // Close the index public void closeindex() throws CorruptIndexException, IOException { writeindex (); writer.close(); 4. Créer un objet de gestion de l index et une fonction d initialisation 5. Créer un objet qui permet de créer, ouvrir et fermer un index Lucene 6. Maintenant que nous avons un index, il faut le peupler. Pour cela, il faut créer un Document avec différents champs (Field) et l ajouter à l index (writer). Ci-dessous un exemple de bout de code pour l ajout d un titre, de son contenu et le chemin vers le fichier : org.apache.lucene.document.document doc = new Document(); // Add the title Field, which will be indexed and Stored doc.add(new Field("title", new StringReader (title), TermVector.YES)); // Add the content Field, which will be indexed and Stored in a TermVector doc.add(new Field("content", content, Field.Store.YES, Field.Index.ANALYZED)); // Add the path Field which will be displayed each time the document is returned doc.add(new Field("path", file, Field.Store.YES, Field.Index.NOT_ANALYZED)); // Add the Document into the Index writer.adddocument(doc); Pour plus de détails, l API 2 de lucene permet d avoir plus de précision sur l objet Document (pour les différentes versions de la fonction add). 7. Créer une fonction qui permet d ajouter un fichier à l index (avec titre, contenu, chemin). 1.2 Index de fichiers Nous allons créer un programme qui index un ensemble de fichiers textes, apres analyse du titre et du contenu. 2 API Lucene : 0 2/api/ 2

3 1. Récuperer le fichier texte suivant : traversn/lucene/files/methode.txt 2. Copier le fichier dans un répertoire files 3. Dans le fichier, on peut remarquerun champ titre et un champ contenu. Créerune fonction qui extrait chaque champ à partir d un fichier. On n utilisera alors FileReader sur le chemin du fichier passé en paramètre pour parser le document pour en récupérer le titre et le contenu. 4. Une fois les champs récupérés, faire appel à la fonction d indexation avec les champs titre, contenu et le chemin vers le fichier. 5. Créer une fonction qui va analyser le contenu du répertoire files et analyser chaque fichier. 1.3 Recherche dans l index Maintenant que nous avons indexé un document, nous allons pouvoir rechercher celui-ci à l aide de requêtes. 1. Pour préparer les requêtes, il faut un analyseur et un parseur lié à l index. Ci-dessous, se trouve le créateur d index avec un analyseur de texte en Français. IndexReader reader = IndexReader.open(FSDirectory.open(new File(directory)), true); IndexSearcher searcher = new IndexSearcher(reader); Analyzer analyzer = new StandardAnalyzer (Version.lucene_30); String defaultfield = "content"; queryparser = new QueryParser(Version.lucene_30, defaultfield, analyzer); 2. Créer un objet de gestion de vos requêtes et une fonction qui permet d initialiser le moteur de requête. 3. Pour faire la requête q, et récupérer les 20 premiers résultats, il suffit d utiliser : //Parse the given String query Query query = queryparser.parse(q); //Prepare the result format TopScoreDocCollector collector = TopScoreDocCollector.create(20, false); //Search the corresponding documents searcher.search(query, collector); //Show founded results ScoreDoc[] hits = collector.topdocs().scoredocs; ScoreDoc scoredoc; Document document; for (int i = 0; i < hits.totalhits; i++) { try { scoredoc = hits[i]; document = searcher.doc(scoredoc.doc); System.out.print (scoredoc.score); System.out.print("\t"); System.out.print (document.get("title")); System.out.print("\t"); System.out.println (document.get("path")); catch (Exception e) { 4. Créer une fonction qui permet d interroger votre index et d afficher le résultat à l aide d une requête (champ String) 5. le langage d interrogation, il suffit d utiliser un ensemble de mots-clés. La syntaxe permet de faire des recherches un peu plus élaborées avec des recherches exactes, des pondérations, des wildcards (complétion)... Vous trouverez la syntaxe exacte ici :. 3

4 1.4 Test de l index Maintenant que nous pouvons ajouter des documents à l index et interroger l index, nous pouvons manipuler intégralement cet index. 1. Créer un objet qui intéragi avec l indexeur et le requêteur 2. Créer un menu qui permet de scanner le contenu du répertoire et d interroger l index 3. Télecharger les fichiers sur le répertoire suivant : traversn/lucene/files. Cette vingtaine de fichiers respectent le même format (title + content). Placer ces fichiers dans votre projet dans le répertoire f iles. 4. Indexer tous les fichiers, via le scanne du répertoire files 5. Faire les requêtes suivantes et comparer les résultats : (a) Recherche Information (b) Recherche NOT Lucene (c) Recherche Information (d) Rechercheˆ 3 Information (e) Recherche Info* (f) title: Recherche (g) Recherche Information 2 (h) title:recherche TO Information (i) +Recherche Information La syntaxe complete utilisée par le moteur lucene est disponible sur ce site : 3 2/queryparsersyntax.html 1.5 Indexation d un site web Pour aller plus loin, nous vous proposons de créer un index pour un site web. Pour cela, vous pouvez créer un objet qui va récupéer la page principale d un site web déterminé par son domaine. Ensuite pour chaque ancre (lien href) présent sur la page, vous parcourez le lien s il est sur le même site web et le parcourir récursivement 3. Pour chaque page, il faut extraire le texte et indexer la page avec son adresse de maniere récurisive. Il faut vérifierque vous cherchez une page de ce site web (même domaine), et que celui-ci contient bien du texte (il faut enlever toutes les balises). Afin de détecter le titre ou les liens, il est fortement conseillé d utiliser la classe Matcher avec un Pattern approprié. Attention, la recherche récursive de pages sur un site web peut être longue et compliquée. Il faut faire attention à ne pas indexer deux fois la même page, et éviter d indexer les images, les vidéos ou les musiques. Il vaut mieux aussi n indexer que les pages du site web, sinon, vous aller indexer le Web... 3 L utilisation de thread est fortement conseillée 4

5 Chapter 2 Travaux Pratiques : Lucène - la fonction de similarité Pour cette partie du TP, nous allons poursuivre l utilisation du moteur d indexation Lucène. Nous allons cette fois-ci modifier la fonction de calcul de similarité afin de voir les conséquences de chaque calcul sur l ordonnancement des résultats. 2.1 Scoring Afin d ordonner les résultats trouvés dans l index, une méthode dite de Scoring est utilisée, basée sur le principe du tf/idf : score(q,d) = (tf(t d ) idf(t) getboost(t.field d ) lengthnorm(t.field d )) coord(q, d) queryn orm(q) La fonction de score utilise les paramètres suivants : 1. q : requête (query) 2. d : document 3. t : terme 4. tf : Fréquence des termes dans le document. Un document qui contient plus souvent un terme est généralement plus relevant. Par défaut : freq 5. idf : Fréquence inverse de la présence du terme dans l index. Les termes les plus communs de l index sont discrimants (contrairement au nom moins communs). Par défaut : log( numdocs docfreq+1 )+1 6. getboost : facteur de boost pour le champ du terme (provient de la requête, en utilisant ˆ ) 7. lengthnorm: La valeur de normalisation pour un champ, à partir du nombre total de termes contenus dans ce champ. Cette valeur est stockée dans l index. Ces valeurs, avec fieldboost, sont stockées dans un index et multipliés dans les scores de hits, sur chaque champ, par le code de recherche. 1 par défaut : numterms 8. coord : Nombre de termes de la requête couvert dans le document. Plus un document répond, plus il est important. par défaut : overlap maxoverlap 5

6 9. querynorm : la valeur de normalisation pour une requête, à partir de la somme des carrés des poids de chacun des termes de la requête. Cette valeur est ensuite multipliée par le poid de chaque terme de requête. Seuls les fonctions tf,idf,lengthnom et coord (celles soulignées) sont modifiable dans Lucène. Les fonctions par défaut sont données au dessous. Ainsi, l algorithme de scoring peut-être personnalisé en définissant votre propre classe Similarity. 2.2 Class Similarity La classe Similarity se trouve dans le package Lucène : org.apache.lucene.search. On peut le modifier via l objet de recherche IndexSearcher que vous utilisez pour vos requêtes. La fonction de similarité par défaut est : org.apache.lucene.search.def aultsimilarity. Voici les différentes étapes pour modifier votre fonction de similarité : 1. Créer un nouvel objet qui hérite de Def aultsimilarity ; 2. Y insérer les fonctions suivantes : public float tf(float freq) ; public float idf(int docfreq, int numdocs) ; public float lengthnorm(string fieldname, int numterms) ; public float coord(int overlap, int maxoverlap) ; 3. Implémenter les fonctions par défaut ; 4. Modifier votre objet similarité pour paramètrer les fonctions choisies. Celles-ci peuvent prendre les calculs suivants : tf : freq, 1, freq, 1 freq,... ; idf : log( numdocs docfreq+1 )+1, 1, numdocs numdocs docfreq+1, 1 log( docfreq+1 ) ; lengthnorm : 1 numterms, 1, numterms, 1 1 numterms ; coord : overlap overlap maxoverlap, 1, 1 maxoverlap, 1 maxoverlap ; 5. Comparer les résultats obtenus à la séance précédente avec différents paramétrages/combinaisons de fonctions. 6

7 Chapter 3 Travaux Pratique : Lucène - Extension Dans cette partie du TP, nous souhaitons intégrer de nouvelles fonctionnalités à notre plateforme d indexation. 1. Développez une interface graphique qui va intégrer l indexation avec les fonctionnalités suivantes : adresse du site web à indexer, stopper l indexation en cours, nombre de documents indexés, vider l index Pour l interrogation : un champ pour la requête une visualisation du document un lien vers la page indexée un panneau de configuration de la fonction de similarité, prenant en paramètre les différentes fonctions de similarité que vous avez intégré dans la partie précédente. 2. Le package snowball permet de gérer la lemmatisation des mots. Nous souhaitons pouvoir paramétrer la plateforme d index pour être capable de le tenir en compte. Lorsque celui-ci est activé, il faut que chacun des termes des documents soient indexés en utilisant snowball. Ainsi, ne seront stockés que les racines des mots. De même, lors de l interrogation, il faudra faire la lemmatisation de chacun des mots de la requête. 3. De même, ajoutez un correcteur orthographique(spellchecker) au module de requête pour pouvoir proposer une requête plus appropriée. 4. Afin d améliorer les requêtes posez à votre index, ajouter un module Wordnet qui vous permettra de trouver des synonymes pour chaque mot de la requête. Proposez ainsi une liste des nouvelles requêtes possibles auxquelles vous associerez le nombre de documents répondant à chaque nouvelle requête(nous n afficherons pas les résultats, seulement le nombre de résultats). 7

Utilisation de Lucene

Utilisation de Lucene Table des matières Utilisation de Lucene... 2 Classes d'indexation... 2 IndexWriter... 2 Directory... 2 Analyzer... 2 Document... 2 Field... 2 Classes de recherche... 3 IndexSearcher... 3 Query... 3 QueryParser...

Plus en détail

TP4 : Stockage de données

TP4 : Stockage de données TP4 : Stockage de données 1 TP4 : Stockage de données Programmation Mobile Objectifs du TP Ce TP a pour objectif de vous initier au stockage des données dans le téléphone Android, dans la mémoire interne

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

Big$data,$le$Web$et$tout$ça $ De$quel$volume$parleDton$?$ Surcharge$d informa>on$ Introduction à la fouille de texte Master Informatique 1 ère année

Big$data,$le$Web$et$tout$ça $ De$quel$volume$parleDton$?$ Surcharge$d informa>on$ Introduction à la fouille de texte Master Informatique 1 ère année Université*Lumière*Lyon*2* *Faculté*de*Sciences*Economiques*et*Ges;on* KHARKIV*Na;onal*University*of*Economic* Introduction à la fouille de texte Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse

Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Travaux pratiques : EJB avec JBoss 5 + Java 6 + Eclipse Introduction Le but de ce TP est de programmer une application à la norme EJB en utilisant le serveur d application JBoss. Matériel requis - JBoss

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

Présentation de la plateforme WINDCHILL. Invitation à rejoindre la plateforme

Présentation de la plateforme WINDCHILL. Invitation à rejoindre la plateforme Présentation de la plateforme WINDCHILL WINDCHILL est une plateforme de travail collaboratif qui vous permettra, entre autres, de partager des documents et de gérer votre projet. L interface est 100% web

Plus en détail

Installation / Sauvegarde Restauration / Mise à jour

Installation / Sauvegarde Restauration / Mise à jour Installation / Sauvegarde Restauration / Mise à jour SPIP version 1.8.x Serveur (Linux) Jean Sébastien BARBOTEU dev.jsb@laposte.net Introduction Nous allons aborder tous les aspects techniques liés à la

Plus en détail

TPS 5 : Prise en main du système de Développement IMAP137L. Préparation. Objectifs : Manipulation :

TPS 5 : Prise en main du système de Développement IMAP137L. Préparation. Objectifs : Manipulation : TPS 5 : Prise en main du système de Développement IMAP137L Préparation 1. Prendre connaissance de l annexe de ce TP et revoir les pages 110-126 du cours. 2. Quels sont les principaux constituants du Système

Plus en détail

Guide de l'utilisateur

Guide de l'utilisateur Guide de l'utilisateur Version 1.0 Mars 2013 1 / 19 Table des matières Envoyer ma première Newsletter avec Hydremail Connexion au service Téléchargement de votre base de données Création de votre segment

Plus en détail

Web Tier : déploiement de servlets

Web Tier : déploiement de servlets Web Tier : déploiement de servlets 1 / 35 Plan 1 Introduction 2 Servlet : Principe de fonctionnement 3 Création et développement sur un serveur JEE 4 Quelques méthodes de l API des servlets 5 Utilisation

Plus en détail

Le mécanisme d exception du langage Java

Le mécanisme d exception du langage Java Le mécanisme d exception du langage Java 1 / 39 Plan 1 Introduction aux exceptions en Java 2 Exemples de code avec gestion des exceptions 3 Créer ses propres exceptions 4 Instruction try/catch/finally

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 1 : Eclipse

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 1 : Eclipse iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 1 : Eclipse Nom(s) : Groupe : Date : Objectifs : Apprendre à se servir du logiciel Eclipse pour le développement d

Plus en détail

Programmation orientée objet en langage JAVA

Programmation orientée objet en langage JAVA Programmation orientée objet en langage JAVA Connexion à une base de données avec JDBC Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX

Plus en détail

Définitions de classes permettant de gérer Étudiant en Enseignant CORRECTION

Définitions de classes permettant de gérer Étudiant en Enseignant CORRECTION EILCO ING 1 - POO Java Contrôle 2014/2015 Définitions de classes permettant de gérer Étudiant en Enseignant CORRECTION Dans ces exercices, nous allons définir une classe Personne qui permettra de gérer

Plus en détail

Tutoriel de mise en place de déploiement de logiciel automatisé. OS utilisé : Windows server 2012 édition standard, Windows 7 professionnel

Tutoriel de mise en place de déploiement de logiciel automatisé. OS utilisé : Windows server 2012 édition standard, Windows 7 professionnel Tutoriel de mise en place de déploiement de logiciel automatisé. OS utilisé : Windows server 2012 édition standard, Windows 7 professionnel I : Installation du serveur II : Installation du client III :

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

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

ETATS PDF. Pourquoi utiliser les états PDF? Comment créer un état PDF? Juin 2010

ETATS PDF. Pourquoi utiliser les états PDF? Comment créer un état PDF? Juin 2010 ETATS PDF Pourquoi utiliser les états PDF? LEADER Informatique vous propose depuis maintenant plusieurs mois la création d état au format PDF. Ce nouveau format pour vos états offre de nombreux avantages

Plus en détail

Familiarisation avec Eclipse / Netbeans

Familiarisation avec Eclipse / Netbeans Institut Galilée LEE Année 011-01 Master T.P. 0 Familiarisation avec Eclipse / Netbeans Lien important contenant le pdf du cours et du TP, et ensuite des sources : http://www-lipn.univ-paris13.fr/~fouquere/mpls

Plus en détail

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 2 : JUnit iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 2 : JUnit Nom(s) : Groupe : Date : Objectifs : Apprendre à vérifier une implantation à l aide de tests unitaires sous

Plus en détail

Inscription de votre site sur Google Configuration du sitemap et de Webmaster Tools pour PrestaBox

Inscription de votre site sur Google Configuration du sitemap et de Webmaster Tools pour PrestaBox Tutoriel PrestaBox n 3 Catégorie : Référencement Inscription de votre site sur Google Configuration du sitemap et de Webmaster Tools pour PrestaBox Pour vous aider dans la mise en place et la gestion de

Plus en détail

T.P. d initiation à XML

T.P. d initiation à XML T.P. d initiation à XML avec l IDE eclipse : manipulation en Java Axe ISI - Philippe Beaune et Laurent Vercouter Jeudi 9 novembre 2006 matin / 3h Résumé Ce T.P. consiste en la découverte de différentes

Plus en détail

Projet. Coloration lexicale et indentation de code Java

Projet. Coloration lexicale et indentation de code Java Université Paris Diderot Programmation Orientée Objet L3 Année 2011-2012 Projet Coloration lexicale et indentation de code Java Le but de ce projet est de développer un programme qui prend en entrée un

Plus en détail

Objets Avancées Semestre 3 Année 2015-2016. Projet

Objets Avancées Semestre 3 Année 2015-2016. Projet Conception et Programmation IUT d Aix-Marseille Dép. INFO Aix Objets Avancées Semestre 3 Année 2015-2016 Projet André Abramé - andre.abrame@univ-amu.fr Sophie Nabitz - sophie.nabitz@univ-avignon.fr Petru

Plus en détail

INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens

INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens INFO-F-101 Programmation Projet 4 Page Ranking(1/4): Création de la matrice du compte des liens Année académique 2009 2010 1 Introduction Ce projet est le premier d une série de quatre projets qui ont

Plus en détail

L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni :

L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni : TP n 9 Xml/Json 1) Exemple d application analysant un fichier XML L exemple qui est mis à votre disposition a pour but de rechercher les données contenues dans un fichier services.xml fourni : Ce fichier

Plus en détail

Depuis votre ordinateur de bureau

Depuis votre ordinateur de bureau Le standard RSS représente un moyen simple d'être tenu informé des nouveaux contenus d'un site web, sans avoir à le consulter directement. Nous allons voir ci dessous comment récupérer le flux RSS des

Plus en détail

Correction langage Java

Correction langage Java MINISTÈRE DE L ÉCOLOGIE, DU DÉVELOPPEMENT DURABLE, DES TRANSPORTS ET DU LOGEMENT EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR Session 2010 Correction langage Java Langage:

Plus en détail

2- Téléchargement et installation version actuelle 6.1

2- Téléchargement et installation version actuelle 6.1 1- EDI NetBeans (Environnement : Microsoft Windows Linux Ubuntu) EDI, Environnement de Développement Intégré Anglais : IDE, Integrated Development Environment Programme regroupant : Un éditeur de texte

Plus en détail

Plateforme de capture et d analyse de sites Web AspirWeb

Plateforme de capture et d analyse de sites Web AspirWeb Projet Java ESIAL 2A 2009-2010 Plateforme de capture et d analyse de sites Web AspirWeb 1. Contexte Ce projet de deuxième année permet d approfondir par la pratique les méthodes et techniques acquises

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

Introduction au débogage avec Eclipse

Introduction au débogage avec Eclipse Introduction au débogage avec Eclipse C. Pain-Barre et H. Garreta IUT INFO Année 2006-2007 1 Notion de debogage Tout développeur est confronté un jour à un programme qui plante pour une raison apparemment

Plus en détail

Mise en œuvre d un Site Sharepoint-V1

Mise en œuvre d un Site Sharepoint-V1 Mise en œuvre d un Site Sharepoint- MAJ 20/01/2015 Ce document décrit le paramétrage pour la mise en œuvre des fonctionnalités standard de Microsoft SharePoint 2013 NADAP et SharePoint NADAP ( Nouvelle

Plus en détail

TP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI

TP WEBSERVICES. 1 Pré-requis. 1.1 L environnement de développement. 1.2 Les librairies nécessaires 1.3 SOAPUI Institut Galilée Année 2014-2015 TP WEBSERVICES Programmation et Logiciels sûrs Master 2 PLS Résumé Ce TP s appuie sur le cours de C. Fouqueré traitant des Environnements et Langage Évolués, ainsi que

Plus en détail

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique»

Java EE Approfondi - Cours 2. Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Java EE Approfondi - Cours 2 Cours de 2 e année ingénieur Spécialisation «Génie Informatique» Présentation Lier l'orienté objet et la base de données relationnelle peut être lourd et consommateur en temps.

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

sommaire Archives... Archiver votre messagerie... Les notes... Les règles de messagerie... Les calendriers partagés... 15 Les listes de diffusions...

sommaire Archives... Archiver votre messagerie... Les notes... Les règles de messagerie... Les calendriers partagés... 15 Les listes de diffusions... sommaire Votre solution de messagerie Futur Office évolue. Pour préparer au mieux la migration qui aura lieu le week-end du 23-24 Juin, nous vous conseillons de réaliser les actions préalables décrites

Plus en détail

Guide d installation de mise à jour logicielle d un terminal Lifesize

Guide d installation de mise à jour logicielle d un terminal Lifesize Guide d installation de mise à jour logicielle d un terminal Lifesize Janvier 2012 Introduction Dans le cadre des contrats de service de vos équipements de visioconférence, vous avez accès aux mises à

Plus en détail

La licence fournie avec Eclipse est une licence open-source un peu particulière appelée EPL (Eclipse Public License).

La licence fournie avec Eclipse est une licence open-source un peu particulière appelée EPL (Eclipse Public License). Qu'est ce qu'eclipse? Eclipse est un environnement de développement intégré (IDE) principalement utilisé en Java. Il peut être amélioré et modifié en utilisant de nombreux plug-ins. La licence fournie

Plus en détail

Les exceptions en java

Les exceptions en java 1/12 Les exceptions en java 2/12 C'est quoi une exception? Une exception est un événement (une erreur) qui se produit lors de l'exécution d'un programme, et qui va provoquer un fonctionnement anormal (par

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Comment accéder à d Internet Explorer

Comment accéder à d Internet Explorer Comment accéder à d Pour ouvrir l application, vous n avez qu à doublecliquer sur l icône de celle-ci : ou vous pouvez encore allez le chercher par le raccourci dans la barre des tâches : Lorsque l application

Plus en détail

Créez des publipostages avec Microsoft Word et Excel (Versions Windows 97 à 2003)

Créez des publipostages avec Microsoft Word et Excel (Versions Windows 97 à 2003) Créez des publipostages avec Microsoft Word et Excel (Versions Windows 97 à 2003) Créer des courriers personnalisés, imprimer des étiquettes, c est possible avec le couple Microsoft Word et Microsoft Excel.

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 9 NFP111 Systèmes et Applications Réparties Cours 6 - Remote Method Invocation (RMI)/Partie 2 Claude Duvallet Université du Havre UFR Sciences et Techniques

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

Le logiciel Ethnos. Ethnos est un logiciel de traitement d enquête conçu pour répondre à des besoins de collecte et de traitement de l information.

Le logiciel Ethnos. Ethnos est un logiciel de traitement d enquête conçu pour répondre à des besoins de collecte et de traitement de l information. Le logiciel Ethnos Ethnos est un logiciel de traitement d enquête conçu pour répondre à des besoins de collecte et de traitement de l information. Pour lancer l exécution du programme, il suffit de cliquer

Plus en détail

WordPress :: Migrer son site du local vers le serveur en ligne

WordPress :: Migrer son site du local vers le serveur en ligne WordPress :: Migrer son site du local vers le serveur en ligne Dans ce tutoriel nous verrons comment passer d'une **version locale* de site vers une version en ligne. Cette méthode est aussi valable quand

Plus en détail

KEZIA CONNECT BY TANGKOKO

KEZIA CONNECT BY TANGKOKO KEZIA CONNECT BY TANGKOKO DATE 01/06/2012 1/10 1/10 TABLE DES MATIERES TABLE DES MATIÈRES... 2 PRÉSENTATION... 3 FONCTIONNALITÉS PRISES EN CHARGES... 3 INSTALLATION DU MODULE PRESTASHOP... 4 1) COPIER

Plus en détail

TP 2 JAVA. public class test1{ public static void main(string arg[]){ code du programme }// main }// class

TP 2 JAVA. public class test1{ public static void main(string arg[]){ code du programme }// main }// class TP 2 JAVA La structure d'un programme Java Un programme Java n'utilisant pas de classe définie par l'utilisateur ni de fonctions autres que la fonction principale main pourra avoir la structure suivante

Plus en détail

Groupe Eyrolles, 2006, ISBN : 2-212-11771-X

Groupe Eyrolles, 2006, ISBN : 2-212-11771-X Groupe Eyrolles, 2006, ISBN : 2-212-11771-X Création de pages dynamiques courantes CHAPITRE 3 169 Figure 3-39 La boîte de dialogue de l objet Liste/Menu permet de configurer les options de l affichage

Plus en détail

Etude de cas : PGE JEE V2

Etude de cas : PGE JEE V2 Arrivés à ce point du tutoriel, nous savons créer une application Web implémentant la persistance des données. Toutefois, le modèle de cette application était simple et composé d'une unique classe et les

Plus en détail

Symphony Déployer des collections sur différents emplacements

Symphony Déployer des collections sur différents emplacements Symphony Déployer des collections sur différents emplacements Sandrine MARTINEZ 19/05/2014 1 / 28 TABLE DES MATIERES 1. Introduction... 3 1.1. But du document... 3 2. Etapes... 4 3. Configuration de Wireless

Plus en détail

Examen de Programmation I

Examen de Programmation I Examen de Programmation I Sciences et Technologies du Vivant, Semestre 1 Mercredi 22 décembre 2010 1. N oubliez pas de mettre vos NOM et PRÉNOM sur toutes vos copies. 2. Merci de garder la donnée. 3. Vous

Plus en détail

Listes de personnes et calculatrice polonaise inverse en Java

Listes de personnes et calculatrice polonaise inverse en Java Listes de personnes et calculatrice polonaise inverse en Java Université Paris Sud Motivation Le but de cet exercice est de manipuler les listes chaînées et les piles et de voir leur application en analyse

Plus en détail

Manipuler les donne es : XML et CSV

Manipuler les donne es : XML et CSV Open data : séquence n 2 Manipuler les donne es : XML et CSV Conditions Travail en groupe Durée : 2h La diffusion des données doit respecter un certains nombres de règles. Les données doivent être documentées

Plus en détail

INTERROGATION D UNE BASE DE DONNEES ROLAP AVEC MONDRIAN/JRUBIK

INTERROGATION D UNE BASE DE DONNEES ROLAP AVEC MONDRIAN/JRUBIK UPPA MASTER 2 - LAOSI Travaux Dirigés d'informatique INTERROGATION D UNE BASE DE DONNEES ROLAP AVEC MONDRIAN/JRUBIK I Installation de JRubik 1/ Récupérez l archive zippée sur le répertoire Public puis

Plus en détail

Réalisation d interfaces graphiques Avec NetBeans. Version 1.0, du mardi 30 octobre 2007

Réalisation d interfaces graphiques Avec NetBeans. Version 1.0, du mardi 30 octobre 2007 Réalisation d interfaces graphiques Avec NetBeans Version 1.0, du mardi 30 octobre 2007 1 1. Création d un projet Dans le menu File, créez un projet en choisissant : New Project. Dans le menu New Project,

Plus en détail

IDM - Graphical Modeling Framework

IDM - Graphical Modeling Framework IDM - Graphical Modeling Framework Youssef RIDENE Objectif du TD Serveur.ecore). Définir un éditeur graphique (DSM : Domain Specific Modeler) pour le méta-modèle vu en TD (ClientProxy- Utiliser la version

Plus en détail

Le programme d affiliation Skyscanner

Le programme d affiliation Skyscanner Le programme d affiliation Skyscanner Skyscanner c est quoi? Trouver l inspiration Vous savez quand vous voulez partir mais pas encore où? Il suffit de choisir la ville de départ et chercher Partout pour

Plus en détail

À la découverte de jquery Mobile

À la découverte de jquery Mobile 1 À la découverte de jquery Mobile jquery Mobile est un ensemble de plug-ins et de widgets de jquery visant à déployer une API multiplates-formes capable de développer des applications Web mobiles. Au

Plus en détail

Kit d intégration JAVA

Kit d intégration JAVA Kit d intégration JAVA sommaire 1. Introduction... 3 1.1. Objet du document... 3 1.2. Public visé... 3 1.3. Contenu du document... 3 1.4. Liste des documents de référence... 3 1.5. Avertissement... 4 1.6.

Plus en détail

Créer son blog pas à pas

Créer son blog pas à pas Créer son blog pas à pas La création du blog se fait à partir de la plate-forme du Web Pédagogique. I- Créer un compte mail Vous pouvez vous créer une adresse mail spécialement pour la gestion du blog

Plus en détail

Félicitations! Vous disposez désormais de votre armoire numérique en ligne.

Félicitations! Vous disposez désormais de votre armoire numérique en ligne. Félicitations! Vous disposez désormais de votre armoire numérique en ligne. Cette armoire va vous permettre : De mieux classer vos documents De mieux les retrouver De mieux les partager Ce petit guide

Plus en détail

Anglais professionnel automobile Guide technique : les utilisations informatiques des modules

Anglais professionnel automobile Guide technique : les utilisations informatiques des modules ( Anglais professionnel automobile ) Guide technique : les utilisations informatiques des modules Préambule Ce document vous présente les différentes utilisations informatiques possibles des modules d

Plus en détail

Outil de virtualisation des informations au niveau d une application

Outil de virtualisation des informations au niveau d une application Fiche technique AppliDis Outil de virtualisation des informations au niveau d une application Fiche IS00194 Version document : 1.06 Diffusion limitée : Systancia, membres du programme Partenaires AppliDis

Plus en détail

GUIDE DES BONNES PRATIQUES SEO

GUIDE DES BONNES PRATIQUES SEO GUIDE DES BONNES PRATIQUES SEO 1 Aujourd hui, les moteurs de recherche comme Google sont de plus en plus précis pour détecter les sites intéressants et le référencement est à l heure actuelle incontournable

Plus en détail

Classes et templates C++

Classes et templates C++ Classes et templates C++ Ce TP propose une application des classes, des templates et du polymorphisme au travers du design de classes permettant de gérer des courbes de Bézier. Contents 1 Bézier unidimensionnelle

Plus en détail

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012

Université Mohammed Premier Année universitaire 2011-2012. Correction de l examen écrit de la session ordinaire 18 Février 2012 Université Mohammed Premier Année universitaire 2011-2012 Faculté des Sciences Filière SMI Département de Mathématiques Module : POO Java et d Informatique Semestre : S5 Correction de l examen écrit de

Plus en détail

Guide d Utilisation du logiciel Calimco pour Windows XP,Vista et 7

Guide d Utilisation du logiciel Calimco pour Windows XP,Vista et 7 Guide d Utilisation du logiciel Calimco pour Windows XP,Vista et 7 1 Pour installer Calimco, merci de vous référer au guide «Installation du logiciel Calimco pour Windows XP,Vista et 7» Ce guide a été

Plus en détail

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Prestashop. Version 2.9a

Plateforme PAYZEN. Intégration du module de paiement pour la plateforme Prestashop. Version 2.9a Plateforme PAYZEN Intégration du module de paiement pour la plateforme Prestashop Version 2.9a Guide d intégration du module de paiement Prestashop 1/12 SUIVI, HISTORIQUE Rédaction, Vérification, Approbation

Plus en détail

Fiche Pratique. MAJ le 10/04/2013

Fiche Pratique. MAJ le 10/04/2013 MAJ le 10/04/2013 Présentation du problème Vous avez deux choses à sauvegarder : 1. Votre système avec vos logiciels. On utilise dans ce cas un logiciel payant comme true image ou un logiciel gratuit comme

Plus en détail

Optimiser le référencement de votre site

Optimiser le référencement de votre site Optimiser le référencement de votre site Silverlight 14/04/2010 Microsoft France Florent PAJANI Web Marketing Manager fpajani@microsoft.com Retrouvez cet atelier à l adresse suivante : http://msdn.microsoft.com/fr-fr/silverlight/silverlight-atelier-7.aspx

Plus en détail

Wordpress, les bases

Wordpress, les bases Wordpress, les bases Sommaire Se connecter... 2 Créer une page... 3 Ajouter une image... 5 Créer le menu principal... 9 Placer un sous-menu... 12 Créer un article... 13 Installer une extension (formulaire)...

Plus en détail

MANUEL D UTILISATION DU SITE INTERNET (PUBLIER) Chapitre 18 : Remplir les champs pour une information, un récit,

MANUEL D UTILISATION DU SITE INTERNET (PUBLIER) Chapitre 18 : Remplir les champs pour une information, un récit, MANUEL D UTILISATION DU SITE INTERNET (PUBLIER) Chapitre 18 : Remplir les champs pour une information, un récit, (Nous ne ferons ici pas de rappel à d autres chapitres, sans quoi, chaque ligne écrite mériterait

Plus en détail

Sujet 17 : Exploitation de données financières de Google Finance en C#

Sujet 17 : Exploitation de données financières de Google Finance en C# Amsellem Ari Pour le 01/06/11 Ohayon Alexandre Gueguen Tristan Sujet 17 : Exploitation de données financières de Google Finance en C# Introduction : Il convient tout d abord de signaler que le titre de

Plus en détail

Sous Windows Server 2012. PPE : Projet de Serveur d Impression Configuration du rôle de serveur d impression

Sous Windows Server 2012. PPE : Projet de Serveur d Impression Configuration du rôle de serveur d impression Sous Windows Server 2012 Installation du Rôle de Serveur d Impression Installation d une Imprimante sur le Serveur et des Pilotes d Impression Configuration de l Environnement pour le Serveur d Impression

Plus en détail

TP3 : Manipulation et implantation de systèmes de fichiers 1

TP3 : Manipulation et implantation de systèmes de fichiers 1 École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande

Plus en détail

W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS. Référence: W4XT_TUTORIAL_020_FR

W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS. Référence: W4XT_TUTORIAL_020_FR W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT DE CONNECTEURS Référence: W4XT_TUTORIAL_020_FR Les prochaines mises à jour de ce document seront disponibles sur www.myw4.com W4 EXTENSION BUS TUTORIEL - DEVELOPPEMENT

Plus en détail

TP1 : Traducteur «Français-Anglais»

TP1 : Traducteur «Français-Anglais» TP1 : Traducteur «Français-Anglais» Objectifs : créer deux activités, basculer entre activités, passer des paramètres entre activités, utiliser un service Internet pour faire réaliser une traduction, utiliser

Plus en détail

Poker. A rendre pour le 25 avril

Poker. A rendre pour le 25 avril Poker A rendre pour le 25 avril 0 Avant propos 0.1 Notation Les parties sans * sont obligatoires (ne rendez pas un projet qui ne contient pas toutes les fonctions sans *). Celles avec (*) sont moins faciles

Plus en détail

LES CHAMPS SPECIFIQUES

LES CHAMPS SPECIFIQUES LES CHAMPS SPECIFIQUES On appelle Champs Spécifiques dans GesCOF la possibilité d ajouter de nouveaux champs de saisie sur les écrans principaux de GesCOF. Vous pouvez ainsi personnaliser vos écrans principaux

Plus en détail

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A

Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Informatique TP4 : Manipulations de fichiers Manipulations de chaînes et de tableaux CPP 1A Djamel Aouane, Frederic Devernay, Matthieu Moy Mars - avril 2015 1 Manipulations de fichiers Pour organiser des

Plus en détail

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source

Introduction JOOMLA. Fonctionnalités. Avantages. Hainaut P. 2013 - www.coursonline.be 1. Joomla est un système de gestion de contenu CMS open source JOOMLA Introduction Joomla est un système de gestion de contenu CMS open source Il permet la conception rapide de sites Web avec une présentation soignée et une navigation très simple C est l outil idéal

Plus en détail

CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape)

CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape) CREER UNE BASE DE DONNEES ACCESS AVEC DAO (étape par étape) NIVEAU : PREMIERE RENCONTRE AVEC VB INITIES/EXPERIMENTES Pré requis pour comprendre ce tutorial : - Connaître les principales commandes de VB

Plus en détail

Créer une simple application Java avec ECLIPSE. Par Ahcène BOUNCEUR

Créer une simple application Java avec ECLIPSE. Par Ahcène BOUNCEUR Créer une simple application Java avec ECLIPSE Par Ahcène BOUNCEUR Janvier 2005 INTRODUCTION Dans cet exemple nous allons vous montrer comment peut-on créer une simple application Java en utilisant l IDE

Plus en détail

Effacer les données cachées de différents types de fichiers

Effacer les données cachées de différents types de fichiers Effacer les données cachées de différents types de fichiers Certains types de fichiers contiennent des données masquées, qui ne sont pas nécessairement visibles à première vue. Ces données sont de nature

Plus en détail

TP2 : Client d une BDD SqlServer

TP2 : Client d une BDD SqlServer TP2 : Client d une BDD SqlServer Objectifs : utiliser la barre de menu, utiliser les préférences d application (settings) ou (options), gérer la persistance des données, utiliser la bibliothèque jtds:jdbc

Plus en détail

TP6 : Gestion de Fichiers

TP6 : Gestion de Fichiers TP6 : Gestion de Fichiers http ://www.univ-montp3.fr/miap/ens/site/pmwiki.php/?n=misashs.progtpfichiers 12 janvier 2014 Table des matières 0 Avant de commencer 1 1 Lecture de fichier 1 1.1 Un exemple............................................

Plus en détail

Programmation Objet Java Correction

Programmation Objet Java Correction INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le

Plus en détail

Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes en banque (Philippe.Genoud@imag.fr)

Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes en banque (Philippe.Genoud@imag.fr) Grenoble 1 IMA Informatique & Mathématiques Appliquées UNIVERSITE JOSEPH FOURIER Sciences, Technologie, Médecine Licence Professionnelle Développeur Web Programmation Orientée Objets Gestion de comptes

Plus en détail

Maverick & CookXML. BELKHADRA Sofiane. BERNABE Thomas. RESSE Romain

Maverick & CookXML. BELKHADRA Sofiane. BERNABE Thomas. RESSE Romain Maverick & CookXML BELKHADRA Sofiane BERNABE Thomas RESSE Romain Présentation Etant donné que nous avons déjà fait une présentation succincte des deux frameworks utilisés, nous n allons pas nous étendre

Plus en détail

Programmation avancée en C

Programmation avancée en C Département Informatique Nom : Prénom : Année scolaire : 2007 2008 Date : 23 juin 2008 Module INF446 Session de juin Programmation avancée en C Contrôle de connaissance 1 de 45 minutes ÅERCI de répondre

Plus en détail

.NET - Classe de Log

.NET - Classe de Log .NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de

Plus en détail

SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT. V 1.0 27 janvier 2011

SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT. V 1.0 27 janvier 2011 SPECIFICATIONS TECHNIQUES POUR LE DEVELOPPEMENT DES PLUGINS TOURISM SYSTEM CLIENT V 1.0 27 janvier 2011 Ce document présente l'utilisation des plugins dans Tourism System Client. Dans le Client, un plugin

Plus en détail

Module: Programmation sites Web Dynamique

Module: Programmation sites Web Dynamique Module: Programmation sites Web Dynamique Formateur: A BENDAOUD LEÇON : MÉTHODES DE NAVIGATION Les différentes méthodes de navigation : Voici les différentes méthodes que nous allons expliciter dans cette

Plus en détail

Atelier Le gestionnaire de fichier

Atelier Le gestionnaire de fichier Chapitre 12 Atelier Le gestionnaire de fichier I Présentation Nautilus est un gestionnaire de fichiers pour l environnement de bureau Gnome. Il offre toutes les fonctions de gestion de fichier en local

Plus en détail