Azioni generali:
Log-in
il Wiki: xwiki ▼: Indice dei Documenti
»
lo Spazio: XWiki ▼: Indice dei Documenti
»
la Pagina: SearchSuggestConfig
Ricerca
Azioni pagina:
Esporta ▼: Esporta come PDF Esporta come RTF Esporta come HTML
Altre azioni ▼: Anteprima stampa Vedi Sorgente
Welcome to XWiki » SearchCode » Search Suggest Configuration

# Tabs macro

Ultima modifica di Administrator il 2010/04/09 10:24
Commenti (0) · Allegati (0) · Cronologia · Informazioni
Contents

- Usage
- Parameters definition
- Known issues
- Examples
  - Content generated by XWiki-wide macro
  - Known bugs example
    - Tab name too long
    - Interesting layout bugs
      - White spaces before (%id
      - White spaces before {{code
  - Example for debugging

This is home and test page for the "tabs" macro.
Creates tabbed view for specified content areas wrapped in <div/>s with unique ids

## Usage

1. Define where tabs should be rendered `{{tabs idsToLabels='tabId1=Tab One, tabId2=Tab Two, ..., tabIdN=Tab N' /`}}
   2. Define tabs content in `(%id="<unique tab id>"%)(((<tab content here>)))`:
   `(%id="tabId1"%)(((Tab 1 Content)))`
   `(%id="tabId2"%)(((Tab 2 Content)))`
   ...
   `(%id="tabIdN"%)(((Tab N Content)))`

## Parameters definition

Name | Optional | Allowed values | Default value | Description
--- | --- | --- | --- | ---
idsToLabels | no | String | - | This parameter required a comma-separated tab id to tab label values sting formatted like idsToLabels='tabId1=Tab One, tabId2=Tab Two, tabId3=TabThree'.

## Known issues

- Tab size is fixed (toucan skin), labels that do not fit will get trimmed (see Tab name too long)
- Layout consistency is dependent on white-spaces (see Interesting layout bugs)

## Examples

### Content generated by XWiki-wide macro

Failed to execute the [velocity] macro

    org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [    $xwiki.jsx.use("Macro.TabsMacro")
        #set ($tabsSortedMapString = $context.macro.params.idsToLabels)
        ## split incoming string into 2 velocity arrays
        #set ($tabMapEntriesStringArray = $tabsSortedMapString.split(','))
        #set( $tabIdsArray = [])
        #set( $tabNamesArray = [])
        #foreach($tabEntryString in $tabMapEntriesStringArray )
            #if ("$!tabEntryString" == "" )
                ## ignore null or empty (see http://wiki.apache.org/velocity/CheckingForNull)
            #else
                #set ($tabEntryArray = $tabEntryString.trim().split('='))
                #if ($tabEntryArray.size()!=2)
                    {{error}}Parameter $tabEntryString is not a valid key=value pair in the provided map: $tabsSortedMapString{{/error}}
                #else
                    #set ($addResult = $tabIdsArray.add($tabEntryArray.get(0).trim()))
                    #set ($addResult = $tabNamesArray.add($tabEntryArray.get(1).trim()))
                #end
            #end
        #end
    ## generate tabs

    {{html}}
    <div class="floatcontainer">
        <ul class="xwikitabbar">
        #set ($firstIteration=true)
        #foreach($tabId in $tabIdsArray)
            #set($count = $velocityCount - 1)
            #set ($tabName = $tabNamesArray.get($count))
            #if ($firstIteration) #set ($firstIteration=false)
            <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));" class="active"><a href="#" onclick="return false;">${tabName}</a></li>
            #else
            <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));"><a href="#" onclick="return false;">${tabName}</a></li>
            #end
        #end
        </ul>
    </div>
    ## this script is responsible for initial content re-positioning
    <script language="JavaScript">
        ## set convenience variable
        #set ($firstTabId = $tabIdsArray.get(0))
        // approach borrowed from http://www.daniweb.com/forums/thread20256.html#
        var oldFunction${firstTabId} = null;
        function appendedOnLoadFunction() {
            if (oldFunction${firstTabId}) {
                oldFunction${firstTabId}();
            }
            switchTab('${firstTabId}', #constructJsStringArray($tabIdsArray));
        }
        function loadBody() {
            oldFunction${firstTabId} = window.onload;
            window.onload = appendedOnLoadFunction;
        }
        loadBody();
    </script>
    {{/html}}
    ## give the array of strings constructs comma-separated list of
    ## string values taken into single quotes and square brackets
    ## e.g. ['item 1', 'item 2' , 'item 3']
    #macro(constructJsStringArray $stringArray)
    [#foreach($stringElement in $stringArray)'${stringElement}'#if( $velocityHasNext ), #end#end]
    #end]
    	at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:131)
    	at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:50)
    	at org.xwiki.rendering.macro.script.AbstractScriptMacro.evaluateBlock(AbstractScriptMacro.java:302)
    	at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:198)
    	at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:59)
    	at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187)
    	at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132)
    	at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:224)
    	at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:59)
    	at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187)
    	at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132)
    	at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:87)
    	at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:252)
    	at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:125)
    	at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:55)
    	at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:80)
    	at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:38)
    	at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:113)
    	at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:50)
    	at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:67)
    	at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:41)
    	at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:921)
    	at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:900)
    	at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:931)
    	at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:603)
    	at sun.reflect.GeneratedMethodAccessor450.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:395)
    	at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
    	at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
    	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
    	at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567)
    	at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71)
    	at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.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:342)
    	at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
    	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187)
    	at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105)
    	at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125)
    	at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75)
    	at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858)
    	at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1798)
    	at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:895)
    	at sun.reflect.GeneratedMethodAccessor186.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:395)
    	at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
    	at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
    	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
    	at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369)
    	at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72)
    	at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216)
    	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311)
    	at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230)
    	at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207)
    	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:342)
    	at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106)
    	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187)
    	at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105)
    	at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125)
    	at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75)
    	at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858)
    	at com.xpn.xwiki.export.html.HtmlPackager.renderDocument(HtmlPackager.java:221)
    	at com.xpn.xwiki.export.html.HtmlPackager.renderDocuments(HtmlPackager.java:274)
    	at com.xpn.xwiki.export.html.HtmlPackager.export(HtmlPackager.java:315)
    	at com.xpn.xwiki.web.ExportAction.exportHTML(ExportAction.java:174)
    	at com.xpn.xwiki.web.ExportAction.render(ExportAction.java:62)
    	at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:284)
    	at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:123)
    	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.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:735)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448)
    	at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:120)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
    	at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
    	at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
    	at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
    	at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111)
    	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
    	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
    	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
    	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
    	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
    	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
    	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
    	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
    	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    	at org.eclipse.jetty.server.Server.handle(Server.java:368)
    	at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488)
    	at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:932)
    	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:994)
    	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640)
    	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
    	at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
    	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
    	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
    	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    	at java.lang.Thread.run(Thread.java:662)
    Caused by: org.xwiki.velocity.XWikiVelocityException: Failed to evaluate content with id [unknown namespace]
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:247)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187)
    	at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:124)
    	... 120 more
    Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'get' in  class java.util.ArrayList threw exception java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at unknown namespace[line 41, column 34]
    	at org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(ASTMethod.java:243)
    	at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:187)
    	at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280)
    	at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567)
    	at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71)
    	at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142)
    	at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342)
    	at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228)
    	... 122 more
    Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
    	at java.util.ArrayList.RangeCheck(ArrayList.java:547)
    	at java.util.ArrayList.get(ArrayList.java:322)
    	at sun.reflect.GeneratedMethodAccessor240.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:395)
    	at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384)
    	at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173)
    	... 128 more

First tab!
I can post any content here

Second tab!
And here too

### Known bugs example

#### Tab name too long

You should view this issue in Toucan skin.
Content is generated from this code: `{{tabs idsToLabels='sql2key1=Small tab, sql2key2=Second large tab with large label' /}}`
Failed to execute the [velocity] macro `org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [ $xwiki.jsx.use("Macro.TabsMacro") #set ($tabsSortedMapString = $context.macro.params.idsToLabels) ## split incoming string into 2 velocity arrays #set ($tabMapEntriesStringArray = $tabsSortedMapString.split(',')) #set( $tabIdsArray = []) #set( $tabNamesArray = []) #foreach($tabEntryString in $tabMapEntriesStringArray ) #if ("$!tabEntryString" == "" ) ## ignore null or empty (see http://wiki.apache.org/velocity/CheckingForNull) #else #set ($tabEntryArray = $tabEntryString.trim().split('=')) #if ($tabEntryArray.size()!=2) {{error}}Parameter $tabEntryString is not a valid key=value pair in the provided map: $tabsSortedMapString{{/error}} #else #set ($addResult = $tabIdsArray.add($tabEntryArray.get(0).trim())) #set ($addResult = $tabNamesArray.add($tabEntryArray.get(1).trim())) #end #end #end ## generate tabs {{html}} <div class="floatcontainer"> <ul class="xwikitabbar"> #set ($firstIteration=true) #foreach($tabId in $tabIdsArray) #set($count = $velocityCount - 1) #set ($tabName = $tabNamesArray.get($count)) #if ($firstIteration) #set ($firstIteration=false) <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));" class="active"><a href="#" onclick="return false;">${tabName}</a></li> #else <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));"><a href="#" onclick="return false;">${tabName}</a></li> #end #end </ul> </div> ## this script is responsible for initial content re-positioning <script language="JavaScript"> ## set convenience variable #set ($firstTabId = $tabIdsArray.get(0)) // approach borrowed from http://www.daniweb.com/forums/thread20256.html# var oldFunction${firstTabId} = null; function appendedOnLoadFunction() { if (oldFunction${firstTabId}) { oldFunction${firstTabId}(); } switchTab('${firstTabId}', #constructJsStringArray($tabIdsArray)); } function loadBody() { oldFunction${firstTabId} = window.onload; window.onload = appendedOnLoadFunction; } loadBody(); </script> {{/html}} ## give the array of strings constructs comma-separated list of ## string values taken into single quotes and square brackets ## e.g. ['item 1', 'item 2' , 'item 3'] #macro(constructJsStringArray $stringArray) [#foreach($stringElement in $stringArray)'${stringElement}'#if( $velocityHasNext ), #end#end] #end] at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:131) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:50) at org.xwiki.rendering.macro.script.AbstractScriptMacro.evaluateBlock(AbstractScriptMacro.java:302) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:198) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:224) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:87) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:252) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:125) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:55) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:80) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:38) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:113) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:50) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:67) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:41) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:921) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:900) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:931) at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:603) at sun.reflect.GeneratedMethodAccessor450.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1798) at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:895) at sun.reflect.GeneratedMethodAccessor186.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207) 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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.export.html.HtmlPackager.renderDocument(HtmlPackager.java:221) at com.xpn.xwiki.export.html.HtmlPackager.renderDocuments(HtmlPackager.java:274) at com.xpn.xwiki.export.html.HtmlPackager.export(HtmlPackager.java:315) at com.xpn.xwiki.web.ExportAction.exportHTML(ExportAction.java:174) at com.xpn.xwiki.web.ExportAction.render(ExportAction.java:62) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:284) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:123) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.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:735) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448) at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:120) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:368) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488) at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:932) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:994) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:662) Caused by: org.xwiki.velocity.XWikiVelocityException: Failed to evaluate content with id [unknown namespace] at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:247) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:124) ... 120 more Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'get' in class java.util.ArrayList threw exception java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at unknown namespace[line 41, column 34] at org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(ASTMethod.java:243) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:187) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) ... 122 more Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.RangeCheck(ArrayList.java:547) at java.util.ArrayList.get(ArrayList.java:322) at sun.reflect.GeneratedMethodAccessor240.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) ... 128 more`

SELECT COUNT(ctg_id) AS col_0_0_ FROM categories
-- some text
-- several lines
-- of comments
-- describing this sql query
SELECT COUNT(ctg_id) AS col_0_0_ FROM categories2
-- another tab with text
-- Testing content overflow
-- Text below this box ...
-- ... should not get covered with it
-- just check this!!!
-- btw: no extra-paragraph has been added before the macro

#### Interesting layout bugs

##### White spaces before (%id

Failed to execute the [velocity] macro `org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [ $xwiki.jsx.use("Macro.TabsMacro") #set ($tabsSortedMapString = $context.macro.params.idsToLabels) ## split incoming string into 2 velocity arrays #set ($tabMapEntriesStringArray = $tabsSortedMapString.split(',')) #set( $tabIdsArray = []) #set( $tabNamesArray = []) #foreach($tabEntryString in $tabMapEntriesStringArray ) #if ("$!tabEntryString" == "" ) ## ignore null or empty (see http://wiki.apache.org/velocity/CheckingForNull) #else #set ($tabEntryArray = $tabEntryString.trim().split('=')) #if ($tabEntryArray.size()!=2) {{error}}Parameter $tabEntryString is not a valid key=value pair in the provided map: $tabsSortedMapString{{/error}} #else #set ($addResult = $tabIdsArray.add($tabEntryArray.get(0).trim())) #set ($addResult = $tabNamesArray.add($tabEntryArray.get(1).trim())) #end #end #end ## generate tabs {{html}} <div class="floatcontainer"> <ul class="xwikitabbar"> #set ($firstIteration=true) #foreach($tabId in $tabIdsArray) #set($count = $velocityCount - 1) #set ($tabName = $tabNamesArray.get($count)) #if ($firstIteration) #set ($firstIteration=false) <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));" class="active"><a href="#" onclick="return false;">${tabName}</a></li> #else <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));"><a href="#" onclick="return false;">${tabName}</a></li> #end #end </ul> </div> ## this script is responsible for initial content re-positioning <script language="JavaScript"> ## set convenience variable #set ($firstTabId = $tabIdsArray.get(0)) // approach borrowed from http://www.daniweb.com/forums/thread20256.html# var oldFunction${firstTabId} = null; function appendedOnLoadFunction() { if (oldFunction${firstTabId}) { oldFunction${firstTabId}(); } switchTab('${firstTabId}', #constructJsStringArray($tabIdsArray)); } function loadBody() { oldFunction${firstTabId} = window.onload; window.onload = appendedOnLoadFunction; } loadBody(); </script> {{/html}} ## give the array of strings constructs comma-separated list of ## string values taken into single quotes and square brackets ## e.g. ['item 1', 'item 2' , 'item 3'] #macro(constructJsStringArray $stringArray) [#foreach($stringElement in $stringArray)'${stringElement}'#if( $velocityHasNext ), #end#end] #end] at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:131) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:50) at org.xwiki.rendering.macro.script.AbstractScriptMacro.evaluateBlock(AbstractScriptMacro.java:302) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:198) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:224) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:87) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:252) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:125) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:55) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:80) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:38) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:113) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:50) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:67) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:41) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:921) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:900) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:931) at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:603) at sun.reflect.GeneratedMethodAccessor450.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1798) at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:895) at sun.reflect.GeneratedMethodAccessor186.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207) 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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.export.html.HtmlPackager.renderDocument(HtmlPackager.java:221) at com.xpn.xwiki.export.html.HtmlPackager.renderDocuments(HtmlPackager.java:274) at com.xpn.xwiki.export.html.HtmlPackager.export(HtmlPackager.java:315) at com.xpn.xwiki.web.ExportAction.exportHTML(ExportAction.java:174) at com.xpn.xwiki.web.ExportAction.render(ExportAction.java:62) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:284) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:123) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.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:735) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448) at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:120) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:368) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488) at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:932) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:994) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:662) Caused by: org.xwiki.velocity.XWikiVelocityException: Failed to evaluate content with id [unknown namespace] at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:247) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:124) ... 120 more Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'get' in class java.util.ArrayList threw exception java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at unknown namespace[line 41, column 34] at org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(ASTMethod.java:243) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:187) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) ... 122 more Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.RangeCheck(ArrayList.java:547) at java.util.ArrayList.get(ArrayList.java:322) at sun.reflect.GeneratedMethodAccessor240.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) ... 128 more`

SELECT COUNT(ctg_id) AS col_0_0_ FROM categories
-- some text
-- of comments
-- describing this sql query
SELECT COUNT(ctg_id) AS col_0_0_ FROM categories2
-- another tab with text
-- some text
-- more lines in comments
-- describing this sql query

##### White spaces before {{code

Check this bug in both Colibri and Toucan skins.
Failed to execute the [velocity] macro `org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [ $xwiki.jsx.use("Macro.TabsMacro") #set ($tabsSortedMapString = $context.macro.params.idsToLabels) ## split incoming string into 2 velocity arrays #set ($tabMapEntriesStringArray = $tabsSortedMapString.split(',')) #set( $tabIdsArray = []) #set( $tabNamesArray = []) #foreach($tabEntryString in $tabMapEntriesStringArray ) #if ("$!tabEntryString" == "" ) ## ignore null or empty (see http://wiki.apache.org/velocity/CheckingForNull) #else #set ($tabEntryArray = $tabEntryString.trim().split('=')) #if ($tabEntryArray.size()!=2) {{error}}Parameter $tabEntryString is not a valid key=value pair in the provided map: $tabsSortedMapString{{/error}} #else #set ($addResult = $tabIdsArray.add($tabEntryArray.get(0).trim())) #set ($addResult = $tabNamesArray.add($tabEntryArray.get(1).trim())) #end #end #end ## generate tabs {{html}} <div class="floatcontainer"> <ul class="xwikitabbar"> #set ($firstIteration=true) #foreach($tabId in $tabIdsArray) #set($count = $velocityCount - 1) #set ($tabName = $tabNamesArray.get($count)) #if ($firstIteration) #set ($firstIteration=false) <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));" class="active"><a href="#" onclick="return false;">${tabName}</a></li> #else <li id="${tabId}ListItem" onclick="switchTab('${tabId}', #constructJsStringArray($tabIdsArray));"><a href="#" onclick="return false;">${tabName}</a></li> #end #end </ul> </div> ## this script is responsible for initial content re-positioning <script language="JavaScript"> ## set convenience variable #set ($firstTabId = $tabIdsArray.get(0)) // approach borrowed from http://www.daniweb.com/forums/thread20256.html# var oldFunction${firstTabId} = null; function appendedOnLoadFunction() { if (oldFunction${firstTabId}) { oldFunction${firstTabId}(); } switchTab('${firstTabId}', #constructJsStringArray($tabIdsArray)); } function loadBody() { oldFunction${firstTabId} = window.onload; window.onload = appendedOnLoadFunction; } loadBody(); </script> {{/html}} ## give the array of strings constructs comma-separated list of ## string values taken into single quotes and square brackets ## e.g. ['item 1', 'item 2' , 'item 3'] #macro(constructJsStringArray $stringArray) [#foreach($stringElement in $stringArray)'${stringElement}'#if( $velocityHasNext ), #end#end] #end] at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:131) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:50) at org.xwiki.rendering.macro.script.AbstractScriptMacro.evaluateBlock(AbstractScriptMacro.java:302) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:198) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:224) at org.xwiki.rendering.internal.macro.wikibridge.DefaultWikiMacro.execute(DefaultWikiMacro.java:59) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transformOnce(MacroTransformation.java:187) at org.xwiki.rendering.internal.transformation.macro.MacroTransformation.transform(MacroTransformation.java:132) at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:87) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:252) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:125) at org.xwiki.display.internal.DocumentContentDisplayer.display(DocumentContentDisplayer.java:55) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:80) at org.xwiki.display.internal.DefaultDocumentDisplayer.display(DefaultDocumentDisplayer.java:38) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:113) at org.xwiki.sheet.internal.SheetDocumentDisplayer.display(SheetDocumentDisplayer.java:50) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:67) at org.xwiki.display.internal.ConfiguredDocumentDisplayer.display(ConfiguredDocumentDisplayer.java:41) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:921) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:900) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:931) at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:603) at sun.reflect.GeneratedMethodAccessor450.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1798) at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:895) at sun.reflect.GeneratedMethodAccessor186.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:369) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:216) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:311) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:230) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:207) 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:342) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:105) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluate(DefaultPrivilegedTemplateRenderer.java:125) at com.xpn.xwiki.internal.template.DefaultPrivilegedTemplateRenderer.evaluateTemplate(DefaultPrivilegedTemplateRenderer.java:75) at com.xpn.xwiki.XWiki.evaluateTemplate(XWiki.java:1858) at com.xpn.xwiki.export.html.HtmlPackager.renderDocument(HtmlPackager.java:221) at com.xpn.xwiki.export.html.HtmlPackager.renderDocuments(HtmlPackager.java:274) at com.xpn.xwiki.export.html.HtmlPackager.export(HtmlPackager.java:315) at com.xpn.xwiki.web.ExportAction.exportHTML(ExportAction.java:174) at com.xpn.xwiki.web.ExportAction.render(ExportAction.java:62) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:284) at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:123) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.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:735) at javax.servlet.http.HttpServlet.service(HttpServlet.java:848) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1448) at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:120) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:144) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:66) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:208) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.xwiki.container.servlet.filters.internal.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:111) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116) at org.eclipse.jetty.server.Server.handle(Server.java:368) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:488) at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:932) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:994) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543) at java.lang.Thread.run(Thread.java:662) Caused by: org.xwiki.velocity.XWikiVelocityException: Failed to evaluate content with id [unknown namespace] at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:247) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:187) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluateString(VelocityMacro.java:124) ... 120 more Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'get' in class java.util.ArrayList threw exception java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at unknown namespace[line 41, column 34] at org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(ASTMethod.java:243) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:187) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:280) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:567) at org.apache.velocity.runtime.parser.node.ASTExpression.value(ASTExpression.java:71) at org.apache.velocity.runtime.parser.node.ASTSetDirective.render(ASTSetDirective.java:142) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:342) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:228) ... 122 more Caused by: java.lang.IndexOutOfBoundsException: Index: 0, Size: 0 at java.util.ArrayList.RangeCheck(ArrayList.java:547) at java.util.ArrayList.get(ArrayList.java:322) at sun.reflect.GeneratedMethodAccessor240.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:395) at org.apache.velocity.util.introspection.UberspectImpl$VelMethodImpl.invoke(UberspectImpl.java:384) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:173) ... 128 more`

SELECT COUNT(ctg_id) AS col_0_0_ FROM categories
-- some text
-- of comments
-- describing this sql query

SELECT COUNT(ctg_id) AS col_0_0_ FROM categories2
-- another tab with text
-- some text
-- more lines in comments
-- describing this sql query

### Example for debugging

Content generated by in-page macro (used for quick macro debugging).
See instructions for debugging at the top of the page

First tab content

Second tab content

Tags:
Creato da Administrator il 2013/07/18 12:50

- Commenti (0)
- Allegati (0)
- Cronologia
- Informazioni

Copyright 2004-2026 XWiki
5.0.3