SlideShare une entreprise Scribd logo
1  sur  21
XWiki
Développement rapide d'une
 application basée sur XWiki
Sommaire
• Premiers pas sur XWiki
• Créer une application sous XWiki



• Ressources :
  – JRE : Java Runtime Environment .
  – XWiki Enterprise 3.4 : Standalone.
Aperçu général.
Ajout d'utilisateur et groupe
Gestion des droits
• 3 Niveaux : Wiki, Espace ou Document
• 2 Éléments: Utilisateur ou Groupe
• 3 Droits : Autorisé, Non autorisé, Hérité
Personnalisation graphique
Personnalisation graphique
 Logo                 Header




               Menu




        View                   Panels
Métas données

• XWiki Classes
  – Types : Number, String,
    TextArea, Password,
    Boolean, Static List, Date..


• XWiki Objects
Scripting : Velocity
• http://velocity.apache.org/
• {{velocity}}
  #set($words = ["Some", "velocity", "code"])
  #foreach($word in $words)
   $word ##
  #end
  {{/velocity}}
Scripting : Groovy
• http://groovy.codehaus.org/
• {{groovy}}
  def list = ["one", "two"]
  list.each { item ->
    println "* ${item}"
  }
  {{/groovy}}
Créer une application
                               sous XWiki
            Application foire aux questions

Source :
   http://platform.xwiki.org/xwiki/bin/view/DevGuide/FAQTutorial
1- Créer la XWiki Class
1- Créer la XWiki Class
2-Créer l’aperçu d’une FAQ
2-Créer l’aperçu d’une FAQ
3-Créer la FAQ Template
5- Créer la page d’accueil de la FAQ
• = Existing FAQ entries =
  {{velocity}}
  #set($sql = ", BaseObject as obj where obj.name = doc.fullName
  and obj.className = 'FAQ.FAQClass' and obj.name <>
  'FAQ.FAQTemplate'")
  #set($results = $xwiki.searchDocuments($sql))
  #if($results.empty)
    No FAQ has been created yet!
  #else
    #foreach ($item in $results)
     #set($faq = $xwiki.getDocument($item))
     * ${faq.display("question")}
    #end
  #end
  {{/velocity}}
5- Créer la page d’accueil de la FAQ
• {{velocity}}
  #set($columns = ["question", "doc.creationDate", "_actions"])
  #set($columnsProperties = {
      "question" : { "type" : "text", "link" : "view", "html" : "true",
  "sortable":true },
      "_actions" : {"actions": ["edit","delete"]}
  })
  #set($options = {
     "className":"FAQ.FAQClass",
     "translationPrefix" : "faq.",
     "tagCloud" : true,
     "rowCount": 10
  })
  #livetable("faq" $columns $columnsProperties $options)
  {{/velocity}}
Testé le résultat :)
Qui a des questions ?
Liens utiles
• Site officiel : http://www.xwiki.org
• Contributions : http://extensions.xwiki.org
• Site de l’entreprise : http://www.nearbee.com

• Mailing List : devs@xwiki.org
• Blogs :
  – Vincent Massol http://massol.myxwiki.org
  – XE Incubator : http://incubator.myxwiki.org

Mon email : farouk.korteby@gmail.com

Contenu connexe

Tendances

Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Silicon Comté
 
Nantes JUG - Elasticsearch
Nantes JUG - ElasticsearchNantes JUG - Elasticsearch
Nantes JUG - ElasticsearchDavid Pilato
 
Finist JUG - Elasticsearch
Finist JUG - ElasticsearchFinist JUG - Elasticsearch
Finist JUG - ElasticsearchDavid Pilato
 
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Bruno Bonnin
 
Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012David Pilato
 
Lyon JUG - Elasticsearch
Lyon JUG - ElasticsearchLyon JUG - Elasticsearch
Lyon JUG - ElasticsearchDavid Pilato
 
Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012David Pilato
 
Paris data geek - Elasticsearch
Paris data geek - ElasticsearchParis data geek - Elasticsearch
Paris data geek - ElasticsearchDavid Pilato
 
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyssOWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyssParis Open Source Summit
 
Introduction à ElasticSearch
Introduction à ElasticSearchIntroduction à ElasticSearch
Introduction à ElasticSearchFadel Chafai
 
ElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementMohamed hedi Abidi
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewLudovic Piot
 
Moteurs de recherche : un oeil sous le capot avec Elastic Search
Moteurs de recherche : un oeil sous le capot avec Elastic SearchMoteurs de recherche : un oeil sous le capot avec Elastic Search
Moteurs de recherche : un oeil sous le capot avec Elastic SearchAudrey Neveu
 
Tunis big data_meetup__21_nov2015__aymenzaafouri
Tunis big data_meetup__21_nov2015__aymenzaafouriTunis big data_meetup__21_nov2015__aymenzaafouri
Tunis big data_meetup__21_nov2015__aymenzaafouriAymen ZAAFOURI
 
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.MongoDB
 
2014 04-09-fr - app dev series - session 4 - indexing
2014 04-09-fr - app dev series - session 4 - indexing2014 04-09-fr - app dev series - session 4 - indexing
2014 04-09-fr - app dev series - session 4 - indexingMongoDB
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic searchJEMLI Fathi
 
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeadsRNS
 
Les différents design patterns pour CoreData par Emmanuel Furnon
Les différents design patterns pour CoreData par Emmanuel FurnonLes différents design patterns pour CoreData par Emmanuel Furnon
Les différents design patterns pour CoreData par Emmanuel FurnonNicolas Lourenço
 

Tendances (20)

Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014Présentation de ElasticSearch / Digital apéro du 12/11/2014
Présentation de ElasticSearch / Digital apéro du 12/11/2014
 
Nantes JUG - Elasticsearch
Nantes JUG - ElasticsearchNantes JUG - Elasticsearch
Nantes JUG - Elasticsearch
 
Finist JUG - Elasticsearch
Finist JUG - ElasticsearchFinist JUG - Elasticsearch
Finist JUG - Elasticsearch
 
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
Breizhcamp 2015 - Comment (ne pas réussir à) modéliser ses data dans elastics...
 
Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012Elasticsearch - Devoxx France 2012
Elasticsearch - Devoxx France 2012
 
Lyon JUG - Elasticsearch
Lyon JUG - ElasticsearchLyon JUG - Elasticsearch
Lyon JUG - Elasticsearch
 
Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012Elasticsearch - OSDC France 2012
Elasticsearch - OSDC France 2012
 
Paris data geek - Elasticsearch
Paris data geek - ElasticsearchParis data geek - Elasticsearch
Paris data geek - Elasticsearch
 
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyssOWF12/HTML 5 local storage , olivier thomas, cto at webtyss
OWF12/HTML 5 local storage , olivier thomas, cto at webtyss
 
Introduction à ElasticSearch
Introduction à ElasticSearchIntroduction à ElasticSearch
Introduction à ElasticSearch
 
ElasticSearch : Architecture et Développement
ElasticSearch : Architecture et DéveloppementElasticSearch : Architecture et Développement
ElasticSearch : Architecture et Développement
 
Oxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overviewOxalide Workshop #3 - Elasticearch, an overview
Oxalide Workshop #3 - Elasticearch, an overview
 
Moteurs de recherche : un oeil sous le capot avec Elastic Search
Moteurs de recherche : un oeil sous le capot avec Elastic SearchMoteurs de recherche : un oeil sous le capot avec Elastic Search
Moteurs de recherche : un oeil sous le capot avec Elastic Search
 
Tunis big data_meetup__21_nov2015__aymenzaafouri
Tunis big data_meetup__21_nov2015__aymenzaafouriTunis big data_meetup__21_nov2015__aymenzaafouri
Tunis big data_meetup__21_nov2015__aymenzaafouri
 
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.
2014 03-26-appdevseries-session3-interactingwiththedatabase-fr-phpapp01-rev.
 
2014 04-09-fr - app dev series - session 4 - indexing
2014 04-09-fr - app dev series - session 4 - indexing2014 04-09-fr - app dev series - session 4 - indexing
2014 04-09-fr - app dev series - session 4 - indexing
 
jQuery
jQueryjQuery
jQuery
 
Découverte de Elastic search
Découverte de Elastic searchDécouverte de Elastic search
Découverte de Elastic search
 
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expertCocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
CocoaHeads Rennes #9 : Gestion mémoire, du débutant à l'expert
 
Les différents design patterns pour CoreData par Emmanuel Furnon
Les différents design patterns pour CoreData par Emmanuel FurnonLes différents design patterns pour CoreData par Emmanuel Furnon
Les différents design patterns pour CoreData par Emmanuel Furnon
 

En vedette

Outils Pour l'écriture collaborative
Outils Pour l'écriture collaborativeOutils Pour l'écriture collaborative
Outils Pour l'écriture collaborativeDavid Liziard
 
Wiki Promosciences Batier Mars 2009
Wiki Promosciences Batier Mars 2009 Wiki Promosciences Batier Mars 2009
Wiki Promosciences Batier Mars 2009 Christophe Batier
 
Urfist Wiki Version Courte
Urfist Wiki Version CourteUrfist Wiki Version Courte
Urfist Wiki Version CourteDavid Liziard
 
D - Créer et gérer un wiki
D - Créer et gérer un wikiD - Créer et gérer un wiki
D - Créer et gérer un wikiDavid Liziard
 
Retour d'expérience sur les wikis en entreprise
Retour d'expérience sur les wikis en entrepriseRetour d'expérience sur les wikis en entreprise
Retour d'expérience sur les wikis en entrepriseBernard Paques
 
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...Amaury Daele
 
Mettre en place un wiki en entreprise
Mettre en place un wiki en entrepriseMettre en place un wiki en entreprise
Mettre en place un wiki en entrepriseEmilie Marquois
 
Démarrer la révolution de la collaboration
Démarrer la révolution de la collaborationDémarrer la révolution de la collaboration
Démarrer la révolution de la collaborationSamuel Le Berrigaud
 
Wiki pour la bibliothèque
Wiki pour la bibliothèqueWiki pour la bibliothèque
Wiki pour la bibliothèquePhilippe Diaz
 
OCL Specification Status
OCL Specification StatusOCL Specification Status
OCL Specification StatusEdward Willink
 
Design Thinking Assignment
Design Thinking AssignmentDesign Thinking Assignment
Design Thinking AssignmentSalma ES-Salmani
 
النشاط العلمي - الكهرباء
النشاط العلمي  -   الكهرباءالنشاط العلمي  -   الكهرباء
النشاط العلمي - الكهرباءErradi Mohamed
 
Embedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEmbedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEdward Willink
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...OCCIware
 
erocci - a scalable model-driven API framework, OW2con'16, Paris.
erocci - a scalable model-driven API framework, OW2con'16, Paris. erocci - a scalable model-driven API framework, OW2con'16, Paris.
erocci - a scalable model-driven API framework, OW2con'16, Paris. OCCIware
 
Ressource numérique Circuit électrique au primaire
Ressource numérique Circuit électrique au primaire Ressource numérique Circuit électrique au primaire
Ressource numérique Circuit électrique au primaire Erradi Mohamed
 

En vedette (20)

Outils Pour l'écriture collaborative
Outils Pour l'écriture collaborativeOutils Pour l'écriture collaborative
Outils Pour l'écriture collaborative
 
Wiki Promosciences Batier Mars 2009
Wiki Promosciences Batier Mars 2009 Wiki Promosciences Batier Mars 2009
Wiki Promosciences Batier Mars 2009
 
Urfist Wiki Version Courte
Urfist Wiki Version CourteUrfist Wiki Version Courte
Urfist Wiki Version Courte
 
D - Créer et gérer un wiki
D - Créer et gérer un wikiD - Créer et gérer un wiki
D - Créer et gérer un wiki
 
Retour d'expérience sur les wikis en entreprise
Retour d'expérience sur les wikis en entrepriseRetour d'expérience sur les wikis en entreprise
Retour d'expérience sur les wikis en entreprise
 
Tp Wiki
Tp WikiTp Wiki
Tp Wiki
 
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...
Appropriation d’un Wiki par une communauté de pratique : analyse des pratique...
 
Mettre en place un wiki en entreprise
Mettre en place un wiki en entrepriseMettre en place un wiki en entreprise
Mettre en place un wiki en entreprise
 
Démarrer la révolution de la collaboration
Démarrer la révolution de la collaborationDémarrer la révolution de la collaboration
Démarrer la révolution de la collaboration
 
Wiki pour la bibliothèque
Wiki pour la bibliothèqueWiki pour la bibliothèque
Wiki pour la bibliothèque
 
OCL Specification Status
OCL Specification StatusOCL Specification Status
OCL Specification Status
 
Design Thinking Assignment
Design Thinking AssignmentDesign Thinking Assignment
Design Thinking Assignment
 
النشاط العلمي - الكهرباء
النشاط العلمي  -   الكهرباءالنشاط العلمي  -   الكهرباء
النشاط العلمي - الكهرباء
 
Embedded OCL Integration and Debugging
Embedded OCL Integration and DebuggingEmbedded OCL Integration and Debugging
Embedded OCL Integration and Debugging
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...OCCIware: extensible and standard-based XaaS platform to manage everything in...
OCCIware: extensible and standard-based XaaS platform to manage everything in...
 
erocci - a scalable model-driven API framework, OW2con'16, Paris.
erocci - a scalable model-driven API framework, OW2con'16, Paris. erocci - a scalable model-driven API framework, OW2con'16, Paris.
erocci - a scalable model-driven API framework, OW2con'16, Paris.
 
Ressource numérique Circuit électrique au primaire
Ressource numérique Circuit électrique au primaire Ressource numérique Circuit électrique au primaire
Ressource numérique Circuit électrique au primaire
 
The OCLforUML Profile
The OCLforUML ProfileThe OCLforUML Profile
The OCLforUML Profile
 
Mix
MixMix
Mix
 

Similaire à Atelier : Développement rapide d&rsquo;une application basée surXWiki

Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langageStrasWeb
 
Hands on lab Elasticsearch
Hands on lab ElasticsearchHands on lab Elasticsearch
Hands on lab ElasticsearchDavid Pilato
 
Jug algeria x wiki-conference
Jug algeria x wiki-conferenceJug algeria x wiki-conference
Jug algeria x wiki-conferenceAlgeria JUG
 
XWiki : Framework de développement pour les plateformes collaboratives
XWiki : Framework de développement pour les plateformes collaborativesXWiki : Framework de développement pour les plateformes collaboratives
XWiki : Framework de développement pour les plateformes collaborativesKorteby Farouk
 
Grails from scratch to prod - MixIT 2011
Grails from scratch to prod - MixIT 2011Grails from scratch to prod - MixIT 2011
Grails from scratch to prod - MixIT 2011Aurélien Maury
 
I don't always write reactive application but when I do, it run on raspberry pi
I don't always write reactive application but when I do, it run on raspberry piI don't always write reactive application but when I do, it run on raspberry pi
I don't always write reactive application but when I do, it run on raspberry piadelegue
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575kate2013
 
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et JavascriptCodedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascriptcodedarmor
 
GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)Neo4j
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans DrupalAdyax
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2dhugomallet
 
Jquery
JqueryJquery
Jquerykrymo
 
Présentation complète de l'HTML5
Présentation complète de l'HTML5Présentation complète de l'HTML5
Présentation complète de l'HTML5jverrecchia
 
Développement Web - HTML5, CSS3, APIs Web
Développement Web - HTML5, CSS3, APIs WebDéveloppement Web - HTML5, CSS3, APIs Web
Développement Web - HTML5, CSS3, APIs WebYoann Gotthilf
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaMicrosoft
 

Similaire à Atelier : Développement rapide d&rsquo;une application basée surXWiki (20)

HTML5
HTML5HTML5
HTML5
 
JQuery
JQueryJQuery
JQuery
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langage
 
Hands on lab Elasticsearch
Hands on lab ElasticsearchHands on lab Elasticsearch
Hands on lab Elasticsearch
 
Présentation nouveauté java7
Présentation nouveauté java7Présentation nouveauté java7
Présentation nouveauté java7
 
Jug algeria x wiki-conference
Jug algeria x wiki-conferenceJug algeria x wiki-conference
Jug algeria x wiki-conference
 
XWiki : Framework de développement pour les plateformes collaboratives
XWiki : Framework de développement pour les plateformes collaborativesXWiki : Framework de développement pour les plateformes collaboratives
XWiki : Framework de développement pour les plateformes collaboratives
 
Grails from scratch to prod - MixIT 2011
Grails from scratch to prod - MixIT 2011Grails from scratch to prod - MixIT 2011
Grails from scratch to prod - MixIT 2011
 
I don't always write reactive application but when I do, it run on raspberry pi
I don't always write reactive application but when I do, it run on raspberry piI don't always write reactive application but when I do, it run on raspberry pi
I don't always write reactive application but when I do, it run on raspberry pi
 
Cours j query-id1575
Cours j query-id1575Cours j query-id1575
Cours j query-id1575
 
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et JavascriptCodedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
Codedarmor 2012 - 06/03 - HTML5, CSS3 et Javascript
 
GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)GraphTour - Workday: Tracking activity with Neo4j (French version)
GraphTour - Workday: Tracking activity with Neo4j (French version)
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
La mobilité dans Drupal
La mobilité dans DrupalLa mobilité dans Drupal
La mobilité dans Drupal
 
Apprenez le jQuery
Apprenez le jQueryApprenez le jQuery
Apprenez le jQuery
 
Cours yeoman backbone box2d
Cours yeoman backbone box2dCours yeoman backbone box2d
Cours yeoman backbone box2d
 
Jquery
JqueryJquery
Jquery
 
Présentation complète de l'HTML5
Présentation complète de l'HTML5Présentation complète de l'HTML5
Présentation complète de l'HTML5
 
Développement Web - HTML5, CSS3, APIs Web
Développement Web - HTML5, CSS3, APIs WebDéveloppement Web - HTML5, CSS3, APIs Web
Développement Web - HTML5, CSS3, APIs Web
 
Azure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmediaAzure Camp 9 Décembre - slides session développeurs webmedia
Azure Camp 9 Décembre - slides session développeurs webmedia
 

Plus de Korteby Farouk

Création des sites web pour débutant
Création des sites web pour débutantCréation des sites web pour débutant
Création des sites web pour débutantKorteby Farouk
 
Ateliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceAteliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceKorteby Farouk
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open sourceKorteby Farouk
 
Le système d&rsquo;E/S en Java
Le système d&rsquo;E/S en JavaLe système d&rsquo;E/S en Java
Le système d&rsquo;E/S en JavaKorteby Farouk
 
Système répartis avec RMI
Système répartis avec RMISystème répartis avec RMI
Système répartis avec RMIKorteby Farouk
 
Java Database Connectivity
Java Database ConnectivityJava Database Connectivity
Java Database ConnectivityKorteby Farouk
 

Plus de Korteby Farouk (10)

Création des sites web pour débutant
Création des sites web pour débutantCréation des sites web pour débutant
Création des sites web pour débutant
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
Ateliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open sourceAteliers : Developpement mobile vs open source
Ateliers : Developpement mobile vs open source
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
 
Le système d&rsquo;E/S en Java
Le système d&rsquo;E/S en JavaLe système d&rsquo;E/S en Java
Le système d&rsquo;E/S en Java
 
Les Servlets et JSP
Les Servlets et JSPLes Servlets et JSP
Les Servlets et JSP
 
Système répartis avec RMI
Système répartis avec RMISystème répartis avec RMI
Système répartis avec RMI
 
Le Réseau et Java
Le Réseau et JavaLe Réseau et Java
Le Réseau et Java
 
Java Database Connectivity
Java Database ConnectivityJava Database Connectivity
Java Database Connectivity
 
Applets
AppletsApplets
Applets
 

Atelier : Développement rapide d&rsquo;une application basée surXWiki

  • 1. XWiki Développement rapide d'une application basée sur XWiki
  • 2. Sommaire • Premiers pas sur XWiki • Créer une application sous XWiki • Ressources : – JRE : Java Runtime Environment . – XWiki Enterprise 3.4 : Standalone.
  • 5. Gestion des droits • 3 Niveaux : Wiki, Espace ou Document • 2 Éléments: Utilisateur ou Groupe • 3 Droits : Autorisé, Non autorisé, Hérité
  • 7. Personnalisation graphique Logo Header Menu View Panels
  • 8. Métas données • XWiki Classes – Types : Number, String, TextArea, Password, Boolean, Static List, Date.. • XWiki Objects
  • 9. Scripting : Velocity • http://velocity.apache.org/ • {{velocity}} #set($words = ["Some", "velocity", "code"]) #foreach($word in $words) $word ## #end {{/velocity}}
  • 10. Scripting : Groovy • http://groovy.codehaus.org/ • {{groovy}} def list = ["one", "two"] list.each { item -> println "* ${item}" } {{/groovy}}
  • 11. Créer une application sous XWiki Application foire aux questions Source : http://platform.xwiki.org/xwiki/bin/view/DevGuide/FAQTutorial
  • 12. 1- Créer la XWiki Class
  • 13. 1- Créer la XWiki Class
  • 16. 3-Créer la FAQ Template
  • 17. 5- Créer la page d’accueil de la FAQ • = Existing FAQ entries = {{velocity}} #set($sql = ", BaseObject as obj where obj.name = doc.fullName and obj.className = 'FAQ.FAQClass' and obj.name <> 'FAQ.FAQTemplate'") #set($results = $xwiki.searchDocuments($sql)) #if($results.empty) No FAQ has been created yet! #else #foreach ($item in $results) #set($faq = $xwiki.getDocument($item)) * ${faq.display("question")} #end #end {{/velocity}}
  • 18. 5- Créer la page d’accueil de la FAQ • {{velocity}} #set($columns = ["question", "doc.creationDate", "_actions"]) #set($columnsProperties = { "question" : { "type" : "text", "link" : "view", "html" : "true", "sortable":true }, "_actions" : {"actions": ["edit","delete"]} }) #set($options = { "className":"FAQ.FAQClass", "translationPrefix" : "faq.", "tagCloud" : true, "rowCount": 10 }) #livetable("faq" $columns $columnsProperties $options) {{/velocity}}
  • 20. Qui a des questions ?
  • 21. Liens utiles • Site officiel : http://www.xwiki.org • Contributions : http://extensions.xwiki.org • Site de l’entreprise : http://www.nearbee.com • Mailing List : devs@xwiki.org • Blogs : – Vincent Massol http://massol.myxwiki.org – XE Incubator : http://incubator.myxwiki.org Mon email : farouk.korteby@gmail.com