[xwiki-users] international charakters in space names
hello, I have several spaces starting with a special charakter ÖGroup etc. xwiki search doesn't find any attachements that are attached to groups starting with Ö when I try to search attachements limiting the search to ÖGroup I get the following error: org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [$xwiki.jsfx.use("uicomponents/search/search.js", false)## $xwiki.ssfx.use("uicomponents/search/search.css", true)## ## Disable the document extra data: comments, attachments, history... #set($docextras = []) #set ($rssmode = ("$!request.xpage" == 'plain')) ## --------------- ## Space filtering ## --------------- #set($spaces = $xwiki.spaces) #set($selectedSpace = "$!request.space") ## --------------- ## 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 $spaces) #if (!$blacklistedSpaces.contains($space)) #spaceoption($space $selectedSpace) #end #end </select> #end ## ## #set($text = "$!request.getParameter('text')") #set($utext = $util.encodeURI($text)) ## {{html}} <form action="" 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> </form> {{/html}} ## #set($space = $selectedSpace) #set($datedlist = $util.arrayList) #if("$!text" == '') ## No search #else #set($text = $text.replaceAll("'", "''").replaceAll("%", "\\%")) #set($nbitems = 50) ## ---------------------------------------------------------------------- ## Exclude Blacklisted spaces ($blacklistedSpaces is set in xwikivars.vm) ## Also exclude WebPreferences. ## ---------------------------------------------------------------------- #set ($webClause = '') #foreach ($blacklistedSpace in $blacklistedSpaces) #set ($webClause = "${webClause} doc.space <> '$blacklistedSpace' and") #end #if(!$hasAdmin && !$isAdvancedUser) #set ($webClause = "${webClause} doc.name<>'WebPreferences' and") #end ## ----------------------------------------------------------- ## Display only a given space if $request.space is defined ## ----------------------------------------------------------- #if("$!space" != '') #set ($webClause = "${webClause} doc.space='$space' and") #end #macro(addelement $item $list) #if($xwiki.hasAccessLevel('view', $context.user, "${context.database}:${item}")) #set($itemdoc = $xwiki.getDocument($item)) ## All items will be sorted by the date; since the list is obtained from several queries, we can't order in the HQL. ## Prefix all item names with the date for sorting the combined results. #set($sdate = $xwiki.formatDate($itemdoc.date, 'yyyyMMddHHmmss')) #set($sitem = "${sdate}${item}") #if(!$list.contains($sitem)) #set($discard = $list.add($sitem)) #end #end #end ## ----------------------------------------------------------- ## Search in the page names ## ----------------------------------------------------------- #set ($sql = "where $webClause upper(doc.fullName) like upper('%$!text%') order by doc.date desc") #foreach ($item in $xwiki.searchDocuments($sql , $nbitems, 0)) #addelement($item $datedlist) #end ## ----------------------------------------------------------- ## Search in page content ## ----------------------------------------------------------- #set ($sql = "where $webClause upper(doc.content) like upper('%$!text%') order by doc.date desc") #foreach ($item in $xwiki.searchDocuments($sql , $nbitems, 0)) #addelement($item $datedlist) #end ## ----------------------------------------------------------- ## Search in text fields (simple String properties) ## ----------------------------------------------------------- #set($sql= ", BaseObject as obj, StringProperty as prop where $webClause obj.name=doc.fullName and prop.id.id = obj.id and upper(prop.value) like upper('%$!text%')") #foreach ($item in $xwiki.searchDocuments($sql , $nbitems, 0)) #addelement($item $datedlist) #end ## ----------------------------------------------------------- ## Search in big text fields (textarea properties) ## ----------------------------------------------------------- #set($sql= ", BaseObject as obj, LargeStringProperty as prop where $webClause obj.name=doc.fullName and prop.id.id = obj.id and upper(prop.value) like upper('%$!text%')") #foreach ($item in $xwiki.searchDocuments($sql , $nbitems, 0)) #addelement($item $datedlist) #end #end #set($list = $util.arrayList) #foreach($item in $util.sort($datedlist)) ## datedlist contains items prefixed with the date; strip the date from the actual item name: #set($ok = $list.add(0, $item.substring(14))) #end #if ("$!utext" != '') #if($rssmode) #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, $xwiki.getXWikiPreference('feed_type', 'rss_2.0')) #else {{include document="XWiki.Results"/}} #if($selectedSpace == '') #set($rssURL = $xwiki.getURL($doc.fullName, 'view', "xpage=plain&outputSyntax=plain&text=${utext}" )) #else #set($rssURL = $xwiki.getURL($doc.fullName, 'view', "xpage=plain&outputSyntax=plain&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", ["[$text]"])</a> {{/html}} #set($luceneSearch = "[[Main.LuceneSearch?text=$!utext]]") {{info}}$msg.get('xe.search.lucene.try', [$luceneSearch]){{/info}} #end #end {{velocity}}] at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:118) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:43) 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(DefaultVelocityEngine.java:200) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:156) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:110) ... 93 more Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'searchDocuments' in class com.xpn.xwiki.api.XWiki threw exception com.xpn.xwiki.XWikiException: Error number 3223 in 3: Exception while searching documents with SQL [select distinct doc.space, doc.name, doc.date from XWikiDocument as doc where (doc.hidden <> true or doc.hidden is null) and doc.space='ÖWM Logo' and upper(doc.fullName) like upper('%manual.pdf%') order by doc.date desc] Wrapped Exception: could not execute query at velocity macro[line 82, column 27] at org.apache.velocity.runtime.parser.node.ASTMethod.handleInvocationException(ASTMethod.java:337) ... 95 more Caused by: com.xpn.xwiki.XWikiException: Error number 3223 in 3: Exception while searching documents with SQL [select distinct doc.space, doc.name, doc.date from XWikiDocument as doc where (doc.hidden <> true or doc.hidden is null) and doc.space='ÖWM Logo' and upper(doc.fullName) like upper('%manual.pdf%') order by doc.date desc] Wrapped Exception: could not execute query at com.xpn.xwiki.store.XWikiHibernateStore.searchDocumentsNamesInternal(XWikiHibernateStore.java:2306) I tried to delete those spaces using the following macro: {{velocity}} #if ($request.space) #if ($request.confirm == "1") #foreach ($item in $xwiki.getSpaceDocsName($request.space)) * Deleting $item $xwiki.getDocument("${request.space}.${item}").delete()\\ #end #else [[Confirm delete space ${request.space}>>$doc.fullName?space=${request.space}&confirm=1]]: #foreach ($item in $xwiki.getSpaceDocsName($request.space)) * $item #end #end #else |=Space |=Action #foreach($space in $xwiki.spaces) |$space | [[Index>>Main.SpaceIndex?space=${space}]] - [[Delete>>$doc.fullName?space=${space}]] #end #end {{/velocity}} -------------------- again the same problem caused by the special charakter: ----> Failed to execute macro: velocity org.xwiki.rendering.macro.MacroExecutionException: Failed to evaluate Velocity Macro for content [#if ($request.space) #if ($request.confirm == "1") #foreach ($item in $xwiki.getSpaceDocsName($request.space)) * Deleting $item $xwiki.getDocument("${request.space}.${item}").delete()\\ #end #else [[Confirm delete space ${request.space}>>$doc.fullName?space=${request.space}&confirm=1]]: #foreach ($item in $xwiki.getSpaceDocsName($request.space)) * $item #end #end #else |=Space |=Action #foreach($space in $xwiki.spaces) |$space | [[Index>>Main.SpaceIndex?space=${space}]] - [[Delete>>$doc.fullName?space=${space}]] #end #end] at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:118) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:43) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:200) at org.xwiki.rendering.macro.script.AbstractScriptMacro.execute(AbstractScriptMacro.java:52) at org.xwiki.rendering.internal.transformation.MacroTransformation.transformOnce(MacroTransformation.java:175) at org.xwiki.rendering.internal.transformation.MacroTransformation.transform(MacroTransformation.java:120) at org.xwiki.rendering.internal.transformation.DefaultTransformationManager.performTransformations(DefaultTransformationManager.java:72) at com.xpn.xwiki.doc.XWikiDocument.performSyntaxConversion(XWikiDocument.java:5586) at com.xpn.xwiki.doc.XWikiDocument.performSyntaxConversion(XWikiDocument.java:5561) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:557) at com.xpn.xwiki.doc.XWikiDocument.getRenderedContent(XWikiDocument.java:571) at com.xpn.xwiki.api.Document.getRenderedContent(Document.java:475) at sun.reflect.GeneratedMethodAccessor324.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(UberspectImpl.java:378) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:493) 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:336) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:191) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:156) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:108) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1703) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1624) at com.xpn.xwiki.api.XWiki.parseTemplate(XWiki.java:657) at sun.reflect.GeneratedMethodAccessor125.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(UberspectImpl.java:378) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270) at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:252) at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:332) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) at org.apache.velocity.runtime.directive.VelocimacroProxy.render(VelocimacroProxy.java:212) at org.apache.velocity.runtime.directive.RuntimeMacro.render(RuntimeMacro.java:247) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java: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:336) at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:106) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:191) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:156) at com.xpn.xwiki.render.XWikiVelocityRenderer.evaluate(XWikiVelocityRenderer.java:108) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1703) at com.xpn.xwiki.XWiki.parseTemplate(XWiki.java:1624) at com.xpn.xwiki.web.Utils.parseTemplate(Utils.java:124) 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(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:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.xpn.xwiki.wysiwyg.server.filter.ConversionFilter.doFilter(ConversionFilter.java:152) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.xpn.xwiki.web.ActionFilter.doFilter(ActionFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.xpn.xwiki.plugin.webdav.XWikiDavFilter.doFilter(XWikiDavFilter.java:68) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.xpn.xwiki.web.SavedRequestRestorerFilter.doFilter(SavedRequestRestorerFilter.java:295) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:112) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:895) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) 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(DefaultVelocityEngine.java:200) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:156) at org.xwiki.rendering.internal.macro.velocity.VelocityMacro.evaluate(VelocityMacro.java:110) ... 93 more Caused by: org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getSpaceDocsName' in class com.xpn.xwiki.api.XWiki threw exception com.xpn.xwiki.XWikiException: Error number 0 in 0: Exception while execute query. Query statement = [getSpaceDocsName] Wrapped Exception: Exception while execute query. Query statement = [getSpaceDocsName] at velocity macro[line 8, column 27] 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.java:252) at org.apache.velocity.runtime.parser.node.ASTReference.value(ASTReference.java:493) at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:282) at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:175) at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:72) at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:336) 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.SimpleNode.render(SimpleNode.java:336) at org.xwiki.velocity.internal.DefaultVelocityEngine.evaluate(DefaultVelocityEngine.java:191) ... 95 more Caused by: com.xpn.xwiki.XWikiException: Error number 0 in 0: Exception while execute query. Query statement = [getSpaceDocsName] Wrapped Exception: Exception while execute query. Query statement = [getSpaceDocsName] at com.xpn.xwiki.XWiki.getSpaceDocsName(XWiki.java:5734) at com.xpn.xwiki.api.XWiki.getSpaceDocsName(XWiki.java:1515) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 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(UberspectImpl.java:378) at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:270) ... 106 more
Theres also a problem with international characters in tags. The tag is created ans assigned to the page but when when you look at the tag pages there are no pages listed. Seems to me xwiki search has a problem with international characters. hel. ----- semantic-web.hel.at [email protected] -- View this message in context: http://n2.nabble.com/international-charakters-in-space-names-tp4618371p46198... Sent from the XWiki- Users mailing list archive at Nabble.com.
participants (2)
-
Axel Zuzek -
hel-o