xwiki: a web development runtime platform

Post on 25-Jun-2015

1.305 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Copyright (c) Vincent Massol - 2011

XWikiA collaborative development platform runtime based

on the wiki paradigm

September 2011

Copyright (c) Vincent Massol - 2011

Agenda

• What is XWiki?

• Development Capabilities

• Why use XWiki?

• QA

Copyright (c) Vincent Massol - 2011

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

Copyright (c) Vincent Massol - 2011

Multiple Usages

Copyright (c) Vincent Massol - 2011

Long tail of AppsExcel of the

Web

Copyright (c) Vincent Massol - 2011

Development Capabilities

Copyright (c) Vincent Massol - 2011

Scripting in Pages (1/2){{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}}

Demo

Copyright (c) Vincent Massol - 2011

Scripting in Pages (2/2){{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}}

Demo

Copyright (c) Vincent Massol - 2011

Adding MetaData• Ability to associate arbitrary

data to any wiki page

• Enable structure in the wiki

• Enable Application development

• Future: Application Within Minutes

Demo

Copyright (c) Vincent Massol - 2011

Wiki MacrosDemo

Copyright (c) Vincent Massol - 2011

Skinning & ThemingDemo

Copyright (c) Vincent Massol - 2011

Components@ComponentRolepublic interface Macro{    List<Block> execute();}

Demo

@Component@Named("message")@Singletonpublic class MessageMacro implements Macro{    @Inject    private Execution execution;

   @Inject    @Named("box")    private Macro boxMacro;

   public List<Block> execute()    {       ...    }}

org.xwiki.rendering.internal.macro.message.MessageMacro

META-INF/components.txt

Copyright (c) Vincent Massol - 2011

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 needed)

• Works from day one, immediate feedbacks

Copyright (c) Vincent Massol - 2011

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

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

Q&A

Me

Copyright (c) Vincent Massol - 2011

Vincent Massolvincent@xwiki.comskype: vmassolhttp://about.me/vmassol

http://xwiki.orghttp://xwiki.com

top related