Ticket #806 (closed Bug: Fixed)
Performing a fulltext search query containing certain characters gives an error
| Reported by: | bruno | Owned by: | somebody |
|---|---|---|---|
| Priority: | Blocker | Milestone: | 2.4 |
| Component: | Repository - querying and indexing | Version: | |
| Keywords: | Cc: |
Description
When performing a fulltext query using a character like : or - fails with an exception. When using 'literal string' as query syntax, this should certainly not happen.
Message: Sitemap: error calling function 'org.outerj.daisy.frontend.FulltextSearchApple' Class: org.apache.cocoon.ProcessingException Stacktrace: org.apache.cocoon.ProcessingException.throwLocated (ProcessingException.java:113) org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke (CallFunctionNode.java:141) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:47) org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke (MatchNode.java:108) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:47) org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke (MatchNode.java:108) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke (PipelineNode.java:143) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke (PipelinesNode.java:93) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:235) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:177) org.apache.cocoon.components.treeprocessor.TreeProcessor.process (TreeProcessor.java:253) org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke (MountNode.java:118) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke (PipelineNode.java:143) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke (PipelinesNode.java:93) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:235) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:177) org.apache.cocoon.components.treeprocessor.TreeProcessor.process (TreeProcessor.java:253) org.apache.cocoon.Cocoon.process (Cocoon.java:699) org.apache.cocoon.servlet.CocoonServlet.service (CocoonServlet.java:1154) javax.servlet.http.HttpServlet.service (HttpServlet.java:820) org.mortbay.jetty.servlet.ServletHolder.handle (ServletHolder.java:487) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter (ServletHandler.java:1093) org.outerj.daisy.frontend.util.CharacterEncodingFilter.doFilter (CharacterEncodingFilter.java:35) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter (ServletHandler.java:1084) org.mortbay.jetty.servlet.ServletHandler.handle (ServletHandler.java:360) org.mortbay.jetty.security.SecurityHandler.handle (SecurityHandler.java:216) org.mortbay.jetty.servlet.SessionHandler.handle (SessionHandler.java:181) org.mortbay.jetty.handler.ContextHandler.handle (ContextHandler.java:726) org.mortbay.jetty.webapp.WebAppContext.handle (WebAppContext.java:405) org.mortbay.jetty.handler.HandlerCollection.handle (HandlerCollection.java:114) org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) org.mortbay.jetty.Server.handle (Server.java:324) org.mortbay.jetty.HttpConnection.handleRequest (HttpConnection.java:505) org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete (HttpConnection.java:828) org.mortbay.jetty.HttpParser.parseNext (HttpParser.java:514) org.mortbay.jetty.HttpParser.parseAvailable (HttpParser.java:211) org.mortbay.jetty.HttpConnection.handle (HttpConnection.java:380) org.mortbay.io.nio.SelectChannelEndPoint.run (SelectChannelEndPoint.java:395) org.mortbay.thread.BoundedThreadPool$PoolThread.run (BoundedThreadPool.java:450) Message: Received exception from repository server. Class: org.outerj.daisy.repository.RepositoryException Stacktrace: org.outerj.daisy.repository.clientimpl.infrastructure.DaisyHttpClient.handleNotOkResponse (DaisyHttpClient.java:175) org.outerj.daisy.repository.clientimpl.infrastructure.DaisyHttpClient.executeMethod (DaisyHttpClient.java:111) org.outerj.daisy.repository.clientimpl.query.RemoteQueryManager.performQuery (RemoteQueryManager.java:148) org.outerj.daisy.repository.clientimpl.query.RemoteQueryManager.performQuery (RemoteQueryManager.java:119) org.outerj.daisy.repository.clientimpl.query.RemoteQueryManager.performQuery (RemoteQueryManager.java:115) org.outerj.daisy.frontend.FulltextSearchApple.processRequest (FulltextSearchApple.java:126) org.outerj.daisy.frontend.util.AbstractDaisyApple.process (AbstractDaisyApple.java:66) org.apache.cocoon.components.flow.apples.ApplesProcessor.processApple (ApplesProcessor.java:139) org.apache.cocoon.components.flow.apples.ApplesProcessor.callFunction (ApplesProcessor.java:82) org.apache.cocoon.components.treeprocessor.sitemap.CallFunctionNode.invoke (CallFunctionNode.java:139) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:47) org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke (MatchNode.java:108) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:47) org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke (MatchNode.java:108) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke (PipelineNode.java:143) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke (PipelinesNode.java:93) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:235) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:177) org.apache.cocoon.components.treeprocessor.TreeProcessor.process (TreeProcessor.java:253) org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke (MountNode.java:118) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke (PipelineNode.java:143) org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes (AbstractParentProcessingNode.java:69) org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke (PipelinesNode.java:93) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:235) org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process (ConcreteTreeProcessor.java:177) org.apache.cocoon.components.treeprocessor.TreeProcessor.process (TreeProcessor.java:253) org.apache.cocoon.Cocoon.process (Cocoon.java:699) org.apache.cocoon.servlet.CocoonServlet.service (CocoonServlet.java:1154) javax.servlet.http.HttpServlet.service (HttpServlet.java:820) org.mortbay.jetty.servlet.ServletHolder.handle (ServletHolder.java:487) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter (ServletHandler.java:1093) org.outerj.daisy.frontend.util.CharacterEncodingFilter.doFilter (CharacterEncodingFilter.java:35) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter (ServletHandler.java:1084) org.mortbay.jetty.servlet.ServletHandler.handle (ServletHandler.java:360) org.mortbay.jetty.security.SecurityHandler.handle (SecurityHandler.java:216) org.mortbay.jetty.servlet.SessionHandler.handle (SessionHandler.java:181) org.mortbay.jetty.handler.ContextHandler.handle (ContextHandler.java:726) org.mortbay.jetty.webapp.WebAppContext.handle (WebAppContext.java:405) org.mortbay.jetty.handler.HandlerCollection.handle (HandlerCollection.java:114) org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) org.mortbay.jetty.Server.handle (Server.java:324) org.mortbay.jetty.HttpConnection.handleRequest (HttpConnection.java:505) org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete (HttpConnection.java:828) org.mortbay.jetty.HttpParser.parseNext (HttpParser.java:514) org.mortbay.jetty.HttpParser.parseAvailable (HttpParser.java:211) org.mortbay.jetty.HttpConnection.handle (HttpConnection.java:380) org.mortbay.io.nio.SelectChannelEndPoint.run (SelectChannelEndPoint.java:395) org.mortbay.thread.BoundedThreadPool$PoolThread.run (BoundedThreadPool.java:450) Message: org/apache/lucene/index/memory/MemoryIndex Class: java.lang.NoClassDefFoundError Stacktrace: ATTENTION: this is the stacktrace of an exception that happened on the repository server. org.apache.lucene.search.highlight.WeightedSpanTermExtractor.getReaderForField (WeightedSpanTermExtractor.java:330) org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extractWeightedSpanTerms (WeightedSpanTermExtractor.java:252) org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extract (WeightedSpanTermExtractor.java:135) org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extract (WeightedSpanTermExtractor.java:97) org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extract (WeightedSpanTermExtractor.java:97) org.apache.lucene.search.highlight.WeightedSpanTermExtractor.getWeightedSpanTerms (WeightedSpanTermExtractor.java:383) org.apache.lucene.search.highlight.QueryScorer.initExtractor (QueryScorer.java:216) org.apache.lucene.search.highlight.QueryScorer.init (QueryScorer.java:184) org.apache.lucene.search.highlight.Highlighter.getBestTextFragments (Highlighter.java:200) org.apache.lucene.search.highlight.Highlighter.getBestFragments (Highlighter.java:158) org.outerj.daisy.ftindex.DocumentHitCollector.contextFragments (DocumentHitCollector.java:178) org.outerj.daisy.ftindex.DocumentHitCollector.contextFragments (DocumentHitCollector.java:106) org.outerj.daisy.query.model.functions.FullTextFragmentFunction.getOutputValue (FullTextFragmentFunction.java:79) org.outerj.daisy.repository.serverimpl.query.LocalQueryManager.buildXmlResult (LocalQueryManager.java:280) org.outerj.daisy.repository.serverimpl.query.LocalQueryManager.performQuery (LocalQueryManager.java:160) org.outerj.daisy.repository.serverimpl.query.LocalQueryManager.performQuery (LocalQueryManager.java:145) org.outerj.daisy.httpconnector.handlers.QueryHandler.handleRequest (QueryHandler.java:79) org.outerj.daisy.httpconnector.HttpConnector$PathHandler.handle (HttpConnector.java:344) org.outerj.daisy.httpconnector.HttpConnector$DaisyServlet.service (HttpConnector.java:287) javax.servlet.http.HttpServlet.service (HttpServlet.java:802) org.mortbay.jetty.servlet.ServletHolder.handle (ServletHolder.java:487) org.mortbay.jetty.servlet.ServletHandler.handle (ServletHandler.java:362) org.mortbay.jetty.security.SecurityHandler.handle (SecurityHandler.java:216) org.mortbay.jetty.handler.ContextHandler.handle (ContextHandler.java:726) org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) org.mortbay.jetty.Server.handle (Server.java:324) org.mortbay.jetty.HttpConnection.handleRequest (HttpConnection.java:505) org.mortbay.jetty.HttpConnection$RequestHandler.content (HttpConnection.java:842) org.mortbay.jetty.HttpParser.parseNext (HttpParser.java:648) org.mortbay.jetty.HttpParser.parseAvailable (HttpParser.java:211) org.mortbay.jetty.HttpConnection.handle (HttpConnection.java:380) org.mortbay.io.nio.SelectChannelEndPoint.run (SelectChannelEndPoint.java:395) org.mortbay.thread.BoundedThreadPool$PoolThread.run (BoundedThreadPool.java:450)
Change History
Note: See
TracTickets for help on using
tickets.
See @5722