On Mon, Jan 25, 2010 at 10:00, Petteri Karttunen
<[email protected]> wrote:
> Hello,
> I've been running xwiki with "log4j.logger.com.xpn.xwiki.plugin.lucene=debug" 
> now for some days. The problem has occurred several times but I've nothing in 
> my logs. Is there something else I could do/debug?

As i said i doubt "log4j.logger.com.xpn.xwiki.plugin.lucene=debug"
bring anything since Lucene plugin does not print any debug log (or
almost nothing and not useful here).

Only part of the code i see where it's possible to have the variable
null (which makes it produce a nullpointerexception) are supposed to
be covered by an error log at some point (not when you look at the
page but before). I can't see how you could have this issue if nothing
goes wrong and is then logged.

> -Pete
>
> -----Alkuperäinen viesti-----
> Lähettäjä: [email protected] [mailto:[email protected]] Puolesta 
> Thomas Mortagne
> Lähetetty: 20. tammikuuta 2010 19:28
> Vastaanottaja: XWiki Users
> Aihe: Re: [xwiki-users] Lucene defaultpage fails
>
> On Wed, Jan 20, 2010 at 17:12, Petteri Karttunen
> <[email protected]> wrote:
>> I wish there was more info in my logs...I paused actively watching and 
>> debugging this one few weeks ago because of the workaround (reinitializing 
>> the plugin when needed in a groovy try{...getQueueSize()...} catch -block on 
>> a search page). As far as I can remember there wasn't any lucene-errors in 
>> my logs at the time and the search clearly returned 0 hits according to 
>> logs. To be sure I'll put the debugging options on again and let you know 
>> the results as soon as the problem occurs again. Are these enough?:
>>
>> log4j.logger.com.xpn.xwiki.plugin.lucene.IndexData=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.DocumentData=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.IndexUpdater=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.IndexRebuilder=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.LucenePlugin=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.SearchResults=debug
>> log4j.logger.com.xpn.xwiki.plugin.lucene.SearchResult=debug
>
> You can use
>
> log4j.logger.com.xpn.xwiki.plugin.lucene=debug
>
> I think but AFAIK there is almost no debug log in Lucene plugin.
>
>>
>> I haven't examined the code thoroughly so probably a missed shot but is 
>> there any chance that this could be a method synchronization issue with 
>> searchers and writers?
>> -Pete
>>
>> -----Alkuperäinen viesti-----
>> Lähettäjä: [email protected] [mailto:[email protected]] Puolesta 
>> Thomas Mortagne
>> Lähetetty: 20. tammikuuta 2010 17:14
>> Vastaanottaja: XWiki Users
>> Aihe: Re: [xwiki-users] Lucene defaultpage fails
>>
>> On Wed, Jan 20, 2010 at 16:01, Petteri Karttunen
>> <[email protected]> wrote:
>>> Everything I could find was this one problem in closing the writer:
>>>
>>> 23:00:06,242 [Lucene index updating thread] [Lucene Index Updater] WARN  
>>> lucene.IndexUpdater             - Failed to close writer.
>>>
>>> I forgot to mention another symptom suggesting index reading problems: when 
>>> the situation is on I can do Lucene-queries (custom search page wo 
>>> getQueueSize()) but it just doesn't return anything. So the plugin kind of 
>>> "works" but "seems" not to be able to read indexes properly.
>>
>> As far as i can see in the code all search* methods in the public api
>> are "protected" from any Exception and return null when something
>> wrong happen. But it also log the error so when you do a failing
>> search you should have something in the log.
>>
>>> -Pete
>>>
>>>
>>> -----Alkuperäinen viesti-----
>>> Lähettäjä: [email protected] [mailto:[email protected]] 
>>> Puolesta Thomas Mortagne
>>> Lähetetty: 20. tammikuuta 2010 15:48
>>> Vastaanottaja: XWiki Users
>>> Aihe: Re: [xwiki-users] Lucene defaultpage fails
>>>
>>> For your informations: as far as i can see in the code there is only
>>> one way to have the IndexUpdater to null (whichgenerate a
>>> nullpointerexcetion in #getQueueSize) is when during the init the
>>> index can't be opened. In this case you should find a log looking like
>>> this:
>>>
>>> "Failed to open the index directory: " followed with a message
>>> detailing a little why it can't open index directory.
>>>
>>> (so indeed it could be caused by the fact that no more inode can be
>>> used on linux for example).
>>>
>>> Could you look if you can find this error anywhere in the log ?
>>>
>>> On Tue, Jan 19, 2010 at 13:48, Thomas Mortagne
>>> <[email protected]> wrote:
>>>> On Tue, Jan 19, 2010 at 13:26, Petteri Karttunen
>>>> <[email protected]> wrote:
>>>>> Hello,
>>>>>
>>>>> My issues seem to happen randomly but not at startup. Plugin works well 
>>>>> from some hours to some days but I'm not sure what triggers this. I 
>>>>> haven't been able to debug anything of interest in plugin's logs.
>>>>>
>>>>> Only potential clue I have is that plugin is leaving index files open 
>>>>> which -at least- leads Tomcat finally to "too many files open" -error at 
>>>>> some point. lsof | grep "lucene" gives me a bunch of these:
>>>>>
>>>>> ...
>>>>> java.bin  10095     tomcat  666r      REG      104,1  60931511   15634869 
>>>>> /srv/www/DATA/xwiki/lucene/_5r7.cfs (deleted)
>>>>> java.bin  10095     tomcat  667r      REG      104,1  60931507   15634870 
>>>>> /srv/www/DATA/xwiki/lucene/_5r9.cfs (deleted)
>>>>> java.bin  10095     tomcat  668r      REG      104,1  60931507   15634871 
>>>>> /srv/www/DATA/xwiki/lucene/_5rb.cfs (deleted)
>>>>> ...
>>>>
>>>>>
>>>>> Also, xwiki gets the plugin object normally during the malfunctional 
>>>>> state but it seems it just cannot read index. Could it be that the plugin 
>>>>> becomes unusable not before a deleted index file becomes overwritten by 
>>>>> the system? That could be the reason why the time it works varies so much 
>>>>> (depending on the other file system usage of the underlying operating 
>>>>> system)? WDT?
>>>>
>>>> This one is http://jira.xwiki.org/jira/browse/XPLUCENE-30 but I don't
>>>> see how it could be the source of the nullpointer exception issue.
>>>>
>>>>>
>>>>> -Pete
>>>>>
>>>>> -----Alkuperäinen viesti-----
>>>>> Lähettäjä: [email protected] [mailto:[email protected]] 
>>>>> Puolesta Thomas Mortagne
>>>>> Lähetetty: 19. tammikuuta 2010 13:20
>>>>> Vastaanottaja: XWiki Users
>>>>> Aihe: Re: [xwiki-users] Lucene defaultpage fails
>>>>>
>>>>> Hi guys,
>>>>>
>>>>> getting some informations since i can't find just at looking at the
>>>>> code how this would append.
>>>>>
>>>>> When you have the issue, does it appending since the time you started
>>>>> XWiki or does it works and at some point it stops to work even if you
>>>>> did not restarted XWiki. Basically is it always a startup issue ?
>>>>>
>>>>> And in that case do you have anything in the beginning of the log like
>>>>> a warning or something indicating that something wrong append during
>>>>> lucene plugin initialization ?
>>>>>
>>>>> On Tue, Jan 19, 2010 at 07:20, Gerritjan Koekkoek
>>>>> <[email protected]> wrote:
>>>>>> The following command (thanks Pete) worked en reinitialized Lucene
>>>>>> after that lucenesearch worked again.
>>>>>>
>>>>>> Hope to hear soon how to prevent that Lucene is not initialized?
>>>>>>
>>>>>>
>>>>>>> xwiki.getXWiki().getPluginManager().getPlugin("lucene").init(xwiki.getXWikiC
>>>>>>> ontext())
>>>>>>
>>>>>>
>>>>>> Op 18 jan 2010, om 10:46 heeft Guillaume Lerouge het volgende geschreven:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> yes, I'm frequently hitting this error too and I'm not sure why. Thomas
>>>>>> Mortagne looked at it last week but he doesn't have a fix yet.
>>>>>>
>>>>>> I was provided with a workaround last friday, I'll see if I can post it 
>>>>>> on
>>>>>> code.xwiki.org
>>>>>>
>>>>>> Guillaume
>>>>>>
>>>>>> On Mon, Jan 18, 2010 at 10:05 AM, Petteri Karttunen <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I'm also encountering this problem randomly since XWiki 2.0 but so far
>>>>>>> haven't been able to find the initial cause. See also
>>>>>>> http://www.mail-archive.com/[email protected]/msg09549.html. As Marius
>>>>>>> suggests it might have something to do with the plugin initialization
>>>>>>> because re-initializing the plugin under those circumstances helps in my
>>>>>>> case:
>>>>>>>
>>>>>>> ...
>>>>>>>
>>>>>>> xwiki.getXWiki().getPluginManager().getPlugin("lucene").init(xwiki.getXWikiC
>>>>>>> ontext()) ...
>>>>>>>
>>>>>>> but this of course doesn't solve the problem behind.
>>>>>>>
>>>>>>> -Pete
>>>>>>>
>>>>>>>
>>>>>>> -----Alkuperäinen viesti-----
>>>>>>> Lähettäjä: [email protected] [mailto:[email protected]]
>>>>>>> Puolesta
>>>>>>> Gerritjan Koekkoek
>>>>>>> Lähetetty: 17. tammikuuta 2010 21:26
>>>>>>> Vastaanottaja: XWiki Users
>>>>>>> Aihe: Re: [xwiki-users] Lucene defaultpage fails
>>>>>>>
>>>>>>> See below for extended error-report
>>>>>>> I also paste the code
>>>>>>> Op 17 jan 2010, om 18:12 heeft Flavius Olaru het volgende geschreven:
>>>>>>>
>>>>>>> On Sun, Jan 17, 2010 at 1:35 PM, Gerritjan Koekkoek
>>>>>>> <[email protected]> wrote:
>>>>>>>> Navigating to the Main.LuceneSearch page brings up the following error?
>>>>>>>>
>>>>>>>> Failed to execute macro: velocity
>>>>>>>> org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate
>>>>>>> Velocity Macro for content
>>>>>>> [$xwiki.jsfx.use("uicomponents/search/search.js",
>>>>>>> true)##
>>>>>>>> $xwiki.ssfx.use("uicomponents/search/search.css", true)##
>>>>>>>> The page has worked, but what can be wrong now.
>>>>>>>> The page itself is not changed from the distribution?
>>>>>>>>
>>>>>>>> Gerritjan
>>>>>>>> _______________________________________________
>>>>>>>> users mailing list
>>>>>>>> [email protected]
>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>
>>>>>>> Hi Gerritjan,
>>>>>>>
>>>>>>> Can you paste in more information about the error?
>>>>>>>
>>>>>>> --
>>>>>>> Flavius Olaru
>>>>>>> ## Disable the document extra data: comments, attachments, history...
>>>>>>> #set($docextras = [])
>>>>>>> ## ===================
>>>>>>> ## Lucene search
>>>>>>> ## ===================
>>>>>>> ## Inputs : $request.text
>>>>>>> ## Outputs : $list, $isScored
>>>>>>> ## ===================
>>>>>>> ## Uncomment this line to overload the maximum list of wiki where to 
>>>>>>> search
>>>>>>> (also the one listed in the wikis combobox)
>>>>>>> ## #set($allwikinamelist = ["xwiki", "wiki1", "wiki2"])
>>>>>>> ##
>>>>>>> ## Uncomment this line to overload the wikis where to search
>>>>>>> ## #set($wikinames = "xwiki,wiki,wiki")
>>>>>>> ##
>>>>>>> ## Uncomment this line to overload the languages to search
>>>>>>> ## #set($languages = "default,en,de")
>>>>>>> #set ($rssmode = ("$!request.xpage" == 'plain'))
>>>>>>> ## ---------------
>>>>>>> ## Space filtering
>>>>>>> ## ---------------
>>>>>>> #set($extraClause = '')
>>>>>>> #set($selectedSpace = "$!request.space")
>>>>>>> #if($selectedSpace != '' && 
>>>>>>> !$blacklistedSpaces.contains($selectedSpace))
>>>>>>> #set($extraClause = " AND web:${selectedSpace}")
>>>>>>> #end
>>>>>>> ## 
>>>>>>> ----------------------------------------------------------------------
>>>>>>> ## Exclude Blacklisted spaces ($blacklistedSpaces is set in 
>>>>>>> xwikivars.vm)
>>>>>>> ## Also exclude WebPreferences.
>>>>>>> ## 
>>>>>>> ----------------------------------------------------------------------
>>>>>>> #foreach ($blacklistedSpace in $blacklistedSpaces)
>>>>>>> #set ($extraClause = " AND NOT web:${blacklistedSpace}${extraClause}")
>>>>>>> #end
>>>>>>> #if(!$hasAdmin && !$isAdvancedUser)
>>>>>>> #set ($extraClause = " AND NOT name:WebPreferences${extraClause}")
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Space macros
>>>>>>> ## ---------------
>>>>>>> #macro(spaceoption $space $selectedSpace)
>>>>>>> <option value="${space}" #if($selectedSpace ==
>>>>>>> $space)selected="selected"#end>$space</option>
>>>>>>> #end
>>>>>>> #macro(spaceselect $selectedSpace $spaces)
>>>>>>> <select name="space" title="$msg.get('xe.search.bar.spaces.title')">
>>>>>>>   <option value="" #if($selectedSpace ==
>>>>>>> '')selected="selected"#end>$msg.get('xe.search.bar.spaces.all')</option>
>>>>>>>   #foreach($space in $xwiki.spaces)
>>>>>>>     #if (!$blacklistedSpaces.contains($space))
>>>>>>>       #spaceoption($space $selectedSpace)
>>>>>>>     #end
>>>>>>>   #end
>>>>>>> </select>
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Wikis filtering
>>>>>>> ## ---------------
>>>>>>> #set($wikinamelist = [])
>>>>>>> #if(!$wikinames)
>>>>>>> #set($wikinametable = $request.getParameterValues("wikinames"))
>>>>>>> #if(!$wikinametable || $request.wikinames == "")
>>>>>>>   #set($wikinametable = $allwikinamelist)
>>>>>>> #end
>>>>>>> #set($wikinames = "")
>>>>>>> #foreach($wikiname in $wikinametable)
>>>>>>>   #set($ok = $wikinamelist.add($wikiname))
>>>>>>>   #if($wikinames != "")
>>>>>>>     #set($wikinames = $wikinames + ",")
>>>>>>>   #end
>>>>>>>   #set($wikinames = $wikinames + $wikiname)
>>>>>>> #end
>>>>>>> #else
>>>>>>> #set($wikinametable = $wikinames.split(", "))
>>>>>>> #foreach($wikiname in $wikinametable)
>>>>>>>   #set($ok = $wikinamelist.add($wikiname))
>>>>>>> #end
>>>>>>> #end
>>>>>>> ##
>>>>>>> #if($xwiki.isVirtualMode())
>>>>>>> #if(!$allwikinamelist)
>>>>>>>   #set($currentwikiname = $context.database)
>>>>>>>   #set($ok = $context.setDatabase($context.mainWikiName))
>>>>>>>   #set($allwikilist = $xwiki.searchDocuments(", BaseObject as obj,
>>>>>>> StringProperty as prop where doc.fullName=obj.name and
>>>>>>> obj.className='XWiki.XWikiServerClass' and prop.id.id=obj.id and
>>>>>>> prop.id.name='server'"))
>>>>>>>   #set($ok = $context.setDatabase($currentwikiname))
>>>>>>>   ##
>>>>>>>   #set($allwikinamelist = [])
>>>>>>>   #foreach($wiki in $allwikilist)
>>>>>>>     #set($ok = $allwikinamelist.add($wiki.substring(17).toLowerCase()))
>>>>>>>   #end
>>>>>>>   #if(!$allwikinamelist.contains($context.mainWikiName))
>>>>>>>     #set($ok = $allwikinamelist.add($context.mainWikiName))
>>>>>>>   #end
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Wikis macros
>>>>>>> ## ---------------
>>>>>>> #macro(wikinamesoption $wikiname $wikinamelist)
>>>>>>>   <option value="$wikiname"
>>>>>>>
>>>>>>> #if($wikinamelist.contains($wikiname))selected="selected"#end>$wikiname</opt
>>>>>>> ion>
>>>>>>> #end
>>>>>>> #macro(wikinamesselect $allwikinamelist $wikinamelist)
>>>>>>>   <select name="wikinames">
>>>>>>>     <option value="" selected="selected">All</option>
>>>>>>>     #foreach($wikiname in $allwikinamelist)
>>>>>>>       #wikinamesoption($wikiname $wikinamelist)
>>>>>>>     #end
>>>>>>>   </select>
>>>>>>> #end
>>>>>>> #else
>>>>>>> #if($wikinames == "")
>>>>>>>   #set($wikinames = $context.mainWikiName)
>>>>>>> #end
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Query preparation
>>>>>>> ## ---------------
>>>>>>> #set($text = "$!request.getParameter('text')")
>>>>>>> #set($query = $text)
>>>>>>> #set($utext = $util.encodeURI($query))
>>>>>>> #set($defaultItemsPerPage = 30)
>>>>>>> #set($itemsPerPage = $util.parseInt("$!{request.perPage}"))
>>>>>>> #if($itemsPerPage <= 0)
>>>>>>> #set($itemsPerPage = $defaultItemsPerPage)
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Query form
>>>>>>> ## ---------------
>>>>>>> #if(!$rssmode)
>>>>>>> {{html}}
>>>>>>> <form action="" method="get" id="searchBar">
>>>>>>> <div class="centered">
>>>>>>>   <input type="text" name="text" class="searchQuery #if($text == '')
>>>>>>> defaultText#end" #if($text == '')
>>>>>>> value="$msg.get('xe.search.bar.query.tip')" #else
>>>>>>> value="$xwiki.getXMLEncoded(${text})" #end
>>>>>>> title="$msg.get('xe.search.bar.query.title')"/>
>>>>>>>   #spaceselect($selectedSpace $spaces)
>>>>>>>   <input type="submit" class="searchButton"
>>>>>>> value="$msg.get('xe.search.bar.submit')"
>>>>>>> title="$msg.get('xe.search.bar.submit.title')"/>
>>>>>>>   <div class="searchHelp">$msg.get('xe.search.bar.queryTip')</div>
>>>>>>> </div>
>>>>>>> </form>
>>>>>>> {{/html}}
>>>>>>> #end
>>>>>>> ## ---------------
>>>>>>> ## Results processing
>>>>>>> ## ---------------
>>>>>>> #if($query != '')
>>>>>>> #set($lucene = $xwiki.getPlugin("lucene"))
>>>>>>> #if($lucene)
>>>>>>>   ## ---------------
>>>>>>>   ## Lucene search
>>>>>>>   ## ---------------
>>>>>>>   #set($searchresults = 
>>>>>>> $lucene.getSearchResults("${query}${extraClause}",
>>>>>>> $wikinames, $!languages, $xwiki))
>>>>>>>   #if($searchresults.getHitcount() > 0)
>>>>>>>     ## -----------------
>>>>>>>     ## Pagination (top)
>>>>>>>     ## -----------------
>>>>>>>     #if(!$rssmode)
>>>>>>>       #set($paginationParameters = {'url' : $doc.getURL('view',
>>>>>>> "text=${query}&amp;space=${selectedSpace}"), 'totalItems' :
>>>>>>> $searchresults.getHitcount(), 'defaultItemsPerPage' : 
>>>>>>> $defaultItemsPerPage,
>>>>>>> 'position': 'top'})
>>>>>>>       {{html}}
>>>>>>>         #pagination($paginationParameters)
>>>>>>>       {{/html}}
>>>>>>>     #end
>>>>>>>     ## -----------------
>>>>>>>     ## Display results
>>>>>>>     ## -----------------
>>>>>>>     #set($firstIndex = "$!{paginationParameters.firstItem}")
>>>>>>>     #if($firstIndex == '')
>>>>>>>       #set($firstIndex = "$!request.getParameter('firstIndex')")
>>>>>>>       #if($firstIndex == '')
>>>>>>>         #set($firstIndex = '0')
>>>>>>>       #end
>>>>>>>     #end
>>>>>>>     #set($firstIndex = $util.parseInt($firstIndex))
>>>>>>>     #set($firstIndex = $firstIndex + 1)
>>>>>>>     #set($results = $searchresults.getResults("$firstIndex",
>>>>>>> "$itemsPerPage"))
>>>>>>>     #if ($rssmode)
>>>>>>>       #set ($list = $util.arrayList)
>>>>>>>       #foreach ($item in $results)
>>>>>>>         #if ($item.type != "attachment")
>>>>>>>           #set ($ok = $list.add(0, "${item.web}.${item.name}"))
>>>>>>>         #end
>>>>>>>       #end
>>>>>>>       #set ($feed = $xwiki.feed.getDocumentFeed($list,
>>>>>>> $util.getHashMap()))
>>>>>>>       #set ($feedURI = $doc.getExternalURL("view"))
>>>>>>>       #set ($discard = $feed.setLink($feedURI))
>>>>>>>       #set ($discard = $feed.setUri($feedURI))
>>>>>>>       #set ($discard = $feed.setAuthor('XWiki'))
>>>>>>>       #set ($discard = $feed.setTitle($msg.get('xe.search.rss', 
>>>>>>> [$text])))
>>>>>>>       #set ($discard = $feed.setDescription($msg.get('xe.search.rss',
>>>>>>> [$text])))
>>>>>>>       #set ($discard = $feed.setLanguage($context.language))
>>>>>>>       #set ($discard =
>>>>>>> $feed.setCopyright($xwiki.getXWikiPreference('copyright')))
>>>>>>>       $xwiki.feed.getFeedOutput($feed, 'rss_2.0')
>>>>>>>     #else
>>>>>>>       #set ($list = $results)
>>>>>>>       #set ($isScored = true)
>>>>>>>       {{include document="XWiki.Results"/}}
>>>>>>>     #end
>>>>>>>     ## -----------------
>>>>>>>     ## Pagination (bottom)
>>>>>>>     ## -----------------
>>>>>>>     #if(!$rssmode)
>>>>>>>       #set($paginationParameters.position = 'bottom')
>>>>>>>       {{html}}
>>>>>>>         #pagination($paginationParameters)
>>>>>>>       {{/html}}
>>>>>>>       ## ---------------
>>>>>>>       ## RSS link
>>>>>>>       ## ---------------
>>>>>>>       #if($selectedSpace == '')
>>>>>>>         #set($rssURL = $xwiki.getURL($doc.fullName, 'view',
>>>>>>> "xpage=rdf&amp;text=${utext}" ))
>>>>>>>       #else
>>>>>>>         #set($rssURL = $xwiki.getURL($doc.fullName, 'view',
>>>>>>> "xpage=rdf&space=${selectedSpace}&text=${utext}"))
>>>>>>>       #end
>>>>>>>       {{html}}
>>>>>>>         <a href="${rssURL}"><img
>>>>>>> src="$xwiki.getSkinFile("icons/silk/feed.gif")" alt="RSS
>>>>>>> icon"/>$msg.get("xe.search.rss", ["[$query]"])</a>
>>>>>>>       {{/html}}
>>>>>>>     #end
>>>>>>>   #end
>>>>>>> #else
>>>>>>>
>>>>>>>   {{error}}$msg.get('xe.search.plugin.notfound')){{/error}}
>>>>>>> #end
>>>>>>> #end
>>>>>>> #if (!$rssmode)
>>>>>>> ## ---------------
>>>>>>> ## Rebuild processing
>>>>>>> ## ---------------
>>>>>>> #set($lucene = $xwiki.getPlugin("lucene"))
>>>>>>> #if($lucene)
>>>>>>>   #set($doRebuild = "$!{request.getParameter('rebuild')}")
>>>>>>>   #if($doRebuild == "yes")
>>>>>>>     #set($documentCount = $lucene.rebuildIndex())
>>>>>>>     #if(${documentCount} >= 0)
>>>>>>>
>>>>>>>       {{info}}$msg.get("xe.search.rebuild.started"){{/info}}
>>>>>>>     #elseif(${documentCount} == -1)
>>>>>>>
>>>>>>>       {{error}}$msg.get("xe.search.rebuild.rights"){{/error}}
>>>>>>>
>>>>>>>     #elseif(${documentCount} == -2)
>>>>>>>
>>>>>>>       {{error}}$msg.get("xe.search.rebuild.inprogress"){{/error}}
>>>>>>>     #else
>>>>>>>
>>>>>>>       {{error}}$msg.get("xe.search.rebuild.failed"){{/error}}
>>>>>>>     #end
>>>>>>>   #else## !doRebuild
>>>>>>>     ## ---------------
>>>>>>>     ## Queue & rebuild option
>>>>>>>     ## ---------------
>>>>>>>     #set ($queuesize = $xwiki.lucene.getQueueSize())
>>>>>>>     #if ($queuesize > 2)
>>>>>>>       #set($info1 = $msg.get('xe.search.rebuild.currently',
>>>>>>> [${queuesize}]))
>>>>>>>     #else
>>>>>>>       #set($info1 = $msg.get('xe.search.index.uptodate'))
>>>>>>>     #end
>>>>>>>     #if($hasAdmin)
>>>>>>>       #set($info2 = "
>>>>>>> [[$msg.get('xe.search.index.rebuild')>>${doc.space}.${doc.name
>>>>>>> }?rebuild=yes]
>>>>>>> ].")
>>>>>>>     #else
>>>>>>>       #set($info2 = "")
>>>>>>>   #end
>>>>>>>
>>>>>>>   {{info}}${info1}${info2}{{/info}}
>>>>>>> #end## doRebuild
>>>>>>> #set($defaultSearch =
>>>>>>> "[[$msg.get('xe.search.default.engine')>>WebSearch?text=$utext]]")
>>>>>>>
>>>>>>> {{warning}}$msg.get('xe.search.lucene.experimental',
>>>>>>> [$defaultSearch]){{/warning}}
>>>>>>>
>>>>>>> #else## !lucene exists
>>>>>>> #set($defaultSearch =
>>>>>>> "[[$msg.get('xe.search.default.engine')>>WebSearch?text=$utext]]")
>>>>>>>
>>>>>>> {{warning}}$msg.get('xe.search.plugin.notenabled',
>>>>>>> [$defaultSearch]){{/warning}}
>>>>>>> #end## lucene exists
>>>>>>> #end## !$rssmode]
>>>>>>>
>>>>>>>
>>>>>>> at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityM
>>>>>>> acro.java:118)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityM
>>>>>>> acro.java:44)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptM
>>>>>>> acro.java:200)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptM
>>>>>>> acro.java:52)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.transformation.MacroTransformation.transformOnc
>>>>>>> e(MacroTransformation.java:175)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.transformation.MacroTransformation.transform(Ma
>>>>>>> croTransformation.java:120)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.transformation.DefaultTransformationManager.per
>>>>>>> formTransformations(DefaultTransformationManager.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.doc.XWikiDocument.performSyntaxConversion(XWikiDocument.java:5
>>>>>>> 696)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.doc.XWikiDocument.performSyntaxConversion(XWikiDocument.java:5
>>>>>>> 671)
>>>>>>>       at
>>>>>>> com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:569)
>>>>>>>       at
>>>>>>> com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:583)
>>>>>>>       at 
>>>>>>> com.xpn.xwiki.api.Document.getRenderedContent(Document.java:475)
>>>>>>>       at sun.reflect.GeneratedMethodAccessor257.invoke(Unknown Source)
>>>>>>>       at
>>>>>>>
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
>>>>>>> .java:25)
>>>>>>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(
>>>>>>> UberspectImpl.java:389)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(Ub
>>>>>>> erspectImpl.java:378)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270
>>>>>>> )
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.ja
>>>>>>> va:252)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java
>>>>>>> :493)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.ja
>>>>>>> va:71)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirecti
>>>>>>> ve.java:142)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:106)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:191)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:156)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.ja
>>>>>>> va:116)
>>>>>>>       at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1710)
>>>>>>>       at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1631)
>>>>>>>       at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:657)
>>>>>>>       at sun.reflect.GeneratedMethodAccessor109.invoke(Unknown Source)
>>>>>>>       at
>>>>>>>
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
>>>>>>> .java:25)
>>>>>>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(
>>>>>>> UberspectImpl.java:389)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(Ub
>>>>>>> erspectImpl.java:378)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270
>>>>>>> )
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.ja
>>>>>>> va:252)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.jav
>>>>>>> a:332)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroPro
>>>>>>> xy.java:212)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:
>>>>>>> 247)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.jav
>>>>>>> a:175)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:87)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>        at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:106)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:191)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:156)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.ja
>>>>>>> va:116)
>>>>>>>       at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1710)
>>>>>>>       at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1631)
>>>>>>>       at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:123)
>>>>>>>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:224)
>>>>>>>       at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:115)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.struts.action.RequestProcessor.processActionPerform(RequestProces
>>>>>>> sor.java:431)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
>>>>>>>       at
>>>>>>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
>>>>>>>       at
>>>>>>> org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
>>>>>>>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>>>>>>>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:290)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilt
>>>>>>> er.java:152)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:235)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:117)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:235)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at
>>>>>>> com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:68)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:235)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.web.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFi
>>>>>>> lter.java:295)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:235)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFi
>>>>>>> lter.java:112)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
>>>>>>> FilterChain.java:235)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
>>>>>>> ain.java:206)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
>>>>>>> va:233)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
>>>>>>> va:191)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128
>>>>>>> )
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102
>>>>>>> )
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
>>>>>>> :109)
>>>>>>>       at
>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
>>>>>>>       at
>>>>>>> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
>>>>>>>       at
>>>>>>> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
>>>>>>>       at 
>>>>>>> org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:769)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:698)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java
>>>>>>> :891)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
>>>>>>> a:690)
>>>>>>>       at java.lang.Thread.run(Thread.java:619)
>>>>>>> Caused by: org.xwiki.velocity.XWikiVelocityException: Failed to evaluate
>>>>>>> content with id [velocity macro]
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:200)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:156)
>>>>>>>       at
>>>>>>>
>>>>>>> org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityM
>>>>>>> acro.java:110)
>>>>>>>       ... 93 more
>>>>>>> Caused by: org.apache.velocity.exception.MethodInvocationException:
>>>>>>> Invocation of method 'getQueueSize' in  class
>>>>>>> com.xpn.xwiki.plugin.lucene.LucenePluginApi threw exception
>>>>>>> java.lang.NullPointerException at velocity macro[line 246, column 34]
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(
>>>>>>> ASTMethod.java:337)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:284
>>>>>>> )
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.ja
>>>>>>> va:252)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java
>>>>>>> :493)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.ja
>>>>>>> va:71)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirecti
>>>>>>> ve.java:142)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>        at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:106)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:87)
>>>>>>>       at
>>>>>>> org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement
>>>>>>> .java:87)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:33
>>>>>>> 6)
>>>>>>>        at
>>>>>>>
>>>>>>> org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEn
>>>>>>> gine.java:191)
>>>>>>>       ... 95 more
>>>>>>> Caused by: java.lang.NullPointerException
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.plugin.lucene.LucenePlugin.getQueueSize(LucenePlugin.java:661)
>>>>>>>       at
>>>>>>>
>>>>>>> com.xpn.xwiki.plugin.lucene.LucenePluginApi.getQueueSize(LucenePluginApi.jav
>>>>>>> a:183)
>>>>>>>       at sun.reflect.GeneratedMethodAccessor370.invoke(Unknown Source)
>>>>>>>       at
>>>>>>>
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
>>>>>>> .java:25)
>>>>>>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.doInvoke(
>>>>>>> UberspectImpl.java:389)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(Ub
>>>>>>> erspectImpl.java:378)
>>>>>>>       at
>>>>>>>
>>>>>>> org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270
>>>>>>> )
>>>>>>>       ... 108 more
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> [email protected]
>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> [email protected]
>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Guillaume Lerouge
>>>>>> Product Manager - XWiki SAS
>>>>>> Skype: wikibc
>>>>>> Twitter: glerouge
>>>>>> http://guillaumelerouge.com/
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> [email protected]
>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> [email protected]
>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Thomas Mortagne
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [email protected]
>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [email protected]
>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Thomas Mortagne
>>>>
>>>
>>>
>>>
>>> --
>>> Thomas Mortagne
>>> _______________________________________________
>>> users mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/users
>>>
>>> _______________________________________________
>>> users mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/users
>>>
>>
>>
>>
>> --
>> Thomas Mortagne
>> _______________________________________________
>> users mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/users
>>
>> _______________________________________________
>> users mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/users
>>
>
>
>
> --
> Thomas Mortagne
> _______________________________________________
> users mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/users
>
> _______________________________________________
> users mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/users
>



-- 
Thomas Mortagne
_______________________________________________
users mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to