XWiki                 A collaborative development platform runtime based                                 on the wiki parad...
Agenda•   What is XWiki?•   Development Capabilities•   Why use XWiki?•   QA                               Copyright (c) V...
What is XWiki?            Copyright (c) Vincent Massol - 2011
Is it a first gen Wiki?                 Copyright (c) Vincent Massol - 2011
Is it a first gen Wiki?       Not only!                   Copyright (c) Vincent Massol - 2011
Is it an Advanced Wiki?                 Copyright (c) Vincent Massol - 2011
Is it an Advanced Wiki?        Not only!                    Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
It’s a dev platform!... and a lot more...   Copyright (c) Vincent Massol - 2011
XWiki Platform... for developing (collaborative) web applications                                                      Cop...
Multiple Usages             Copyright (c) Vincent Massol - 2011
Long tail of Apps                      Excel of the                         Web              Copyright (c) Vincent Massol ...
Development Capabilities            Copyright (c) Vincent Massol - 2011
Scripting in Pages (1/2)                                                                                     Demo{{groovy}...
Scripting in Pages (2/2)                                                                                     Demo{{velocit...
Adding MetaData• Ability to associate arbitrary                                Demo  data to any wiki page  • Enable struc...
Wiki Macros                                Demo          Copyright (c) Vincent Massol - 2011
Skinning & Theming                   Demo              Copyright (c) Vincent Massol - 2011
Components                                                        Demo@ComponentRolepublic interface Macro{    List<Block>...
extensions.xwiki.org               Copyright (c) Vincent Massol - 2011
Why use XWiki?           Copyright (c) Vincent Massol - 2011
Pros (1/2)•    Iterative, Need-based development•    Continuous Delivery    • Online immediately (no deployment      neede...
Pros (2/2)• Work collaboratively on creating  applications • Designers can style while devs create    logic• Open source• ...
Cons• Save code in SCM • ... but SVN Application• Low integration with existing dev tools • ... but XEclipse • ... but Web...
Q&A      Me       Copyright (c) Vincent Massol - 2011
Vincent Massolvincent@xwiki.comskype: vmassolhttp://about.me/vmassolhttp://xwiki.orghttp://xwiki.com                      ...
Upcoming SlideShare
Loading in...5
×

XWiki: A web development runtime platform

3,030

Published on

When developing a web application the traditional way is to develop the application from scratch using a general purpose language such as PHP, Grails, Java/JSP, etc. This presentation will show that a second generation wiki (examples based on XWiki: http://xwiki.org) can be used as a web development platform to develop applications on top of it, providing much if not all the needed infrastructure scaffolding.

The advantages are similar to those of using an application sever. However whereas an application server offers technical services only, a wiki platform offers higher level services such as content management, rendering, storage, WYSIWYGeditor, user management, and a lot more.

Not only are these services offered, you can develop using them in your traditional IDE or in the runtime, directly in wiki pages. This allows developing web applications extremely quickly with a fast turnaround time, which is perfect for adhoc web application development.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,030
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

XWiki: A web development runtime platform

  1. 1. XWiki A collaborative development platform runtime based on the wiki paradigm Copyright (c) Vincent Massol - 2011September 2011
  2. 2. Agenda• What is XWiki?• Development Capabilities• Why use XWiki?• QA Copyright (c) Vincent Massol - 2011
  3. 3. What is XWiki? Copyright (c) Vincent Massol - 2011
  4. 4. Is it a first gen Wiki? Copyright (c) Vincent Massol - 2011
  5. 5. Is it a first gen Wiki? Not only! Copyright (c) Vincent Massol - 2011
  6. 6. Is it an Advanced Wiki? Copyright (c) Vincent Massol - 2011
  7. 7. Is it an Advanced Wiki? Not only! Copyright (c) Vincent Massol - 2011
  8. 8. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  9. 9. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  10. 10. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  11. 11. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  12. 12. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  13. 13. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  14. 14. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  15. 15. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  16. 16. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  17. 17. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  18. 18. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  19. 19. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  20. 20. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  21. 21. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  22. 22. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  23. 23. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  24. 24. It’s a dev platform!... and a lot more... Copyright (c) Vincent Massol - 2011
  25. 25. XWiki Platform... for developing (collaborative) web applications Copyright (c) Vincent Massol - 2011
  26. 26. Multiple Usages Copyright (c) Vincent Massol - 2011
  27. 27. Long tail of Apps Excel of the Web Copyright (c) Vincent Massol - 2011
  28. 28. Development Capabilities Copyright (c) Vincent Massol - 2011
  29. 29. Scripting in Pages (1/2) Demo{{groovy}}@Grab(group=org.codehaus.groovy.modules.http-builder, module=http-builder, version=0.5.1)import groovyx.net.http.*def http = new HTTPBuilder( http://nexus.xwiki.org/nexus/ )def resp = http.get( path: service/local/repositories)println "|=Name|=Type|=Location"resp.data."repositories-item".each() { println "|${it.name}|${it.repoType}|${it. contentResourceURI}"}{{/groovy}} Copyright (c) Vincent Massol - 2011
  30. 30. Scripting in Pages (2/2) Demo{{velocity}}#set ($xwql = "where doc.content like %welcome%")#foreach ($item in $services.query.xwql($xwql).execute()) #if ($request.confirm == "1") #set ($itemDoc = $xwiki.getDocument($item)) $itemDoc.setContent($itemDoc.getContent().replaceAll( "welcome", "bienvenue")) $itemDoc.save("Replaced bienvenue") * [[$item>>$item]] replaced! #else * [[$item>>$item]] #end#end[[Replace "welcome" by "bienvenue">>?confirm=1]]{{/velocity}} Copyright (c) Vincent Massol - 2011
  31. 31. Adding MetaData• Ability to associate arbitrary Demo data to any wiki page • Enable structure in the wiki • Enable Application development• Future: Application Within Minutes Copyright (c) Vincent Massol - 2011
  32. 32. Wiki Macros Demo Copyright (c) Vincent Massol - 2011
  33. 33. Skinning & Theming Demo Copyright (c) Vincent Massol - 2011
  34. 34. Components Demo@ComponentRolepublic interface Macro{    List<Block> execute();}@Component@Named("message")@Singletonpublic class MessageMacro implements Macro{    @Inject    private Execution execution;    @Inject    @Named("box")    private Macro boxMacro;    public List<Block> execute()    {       ...    }}META-INF/components.txtorg.xwiki.rendering.internal.macro.message.MessageMacro Copyright (c) Vincent Massol - 2011
  35. 35. extensions.xwiki.org Copyright (c) Vincent Massol - 2011
  36. 36. Why use XWiki? Copyright (c) Vincent Massol - 2011
  37. 37. Pros (1/2)• Iterative, Need-based development• Continuous Delivery • Online immediately (no deployment needed)• Works from day one, immediate feedbacks Copyright (c) Vincent Massol - 2011
  38. 38. Pros (2/2)• Work collaboratively on creating applications • Designers can style while devs create logic• Open source• Strong and meritocratic community Copyright (c) Vincent Massol - 2011
  39. 39. Cons• Save code in SCM • ... but SVN Application• Low integration with existing dev tools • ... but XEclipse • ... but WebDAV• Not an official standard • Higher “risk”, less trained devs, etc Copyright (c) Vincent Massol - 2011
  40. 40. Q&A Me Copyright (c) Vincent Massol - 2011
  41. 41. Vincent Massolvincent@xwiki.comskype: vmassolhttp://about.me/vmassolhttp://xwiki.orghttp://xwiki.com Copyright (c) Vincent Massol - 2011

×