Return-Path: X-Original-To: apmail-lucene-java-user-archive@www.apache.org Delivered-To: apmail-lucene-java-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 2A0AF10481 for ; Fri, 1 Nov 2013 19:14:56 +0000 (UTC) Received: (qmail 11723 invoked by uid 500); 1 Nov 2013 19:14:54 -0000 Delivered-To: apmail-lucene-java-user-archive@lucene.apache.org Received: (qmail 11599 invoked by uid 500); 1 Nov 2013 19:14:54 -0000 Mailing-List: contact java-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-user@lucene.apache.org Delivered-To: mailing list java-user@lucene.apache.org Delivered-To: moderator for java-user@lucene.apache.org Received: (qmail 2851 invoked by uid 99); 1 Nov 2013 19:09:05 -0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of thomas.m.fuchs@gmail.com designates 209.85.219.47 as permitted sender) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=N2ii666/ByP+/veHPjn9OvJ32ldWByyXMdtU16txsFE=; b=yfaX8PRIJkkgpXR//40lT1fc0lRieO6yFf07jQa5LWoABUjSHBk0Y6A5AGL8tBlucP dsX1y81SADlJynybBt85n0cmKI+430WbhmkxG/852y/aMxC5O8rn6C8SH9EN3SkosL3Q CvE+j5ZBSunYw4q92cIRDl+lwGR5VwufO74pFWImZP6x3+z+P1rfQYKVm+E89tiw/Eyk gu+EUlpJ6gDHTMbAiSCICY2p9oKvNAueBVnzVmcw2xCYxnHUziUj7+In2NWDIc+Y68IC 4qja1niOfcaKxsEdoWkjeG5Y2mM1ZFN3h6e7HkwGLWaBrxkNDrLi9fYcL8PFeYgSO+i0 eSFQ== MIME-Version: 1.0 X-Received: by 10.60.60.71 with SMTP id f7mr1619064oer.82.1383332917568; Fri, 01 Nov 2013 12:08:37 -0700 (PDT) Sender: thomas.m.fuchs@gmail.com Date: Fri, 1 Nov 2013 20:08:37 +0100 X-Google-Sender-Auth: W0cMDcCBSDh0vJRkBHUpaMFhnwo Message-ID: Subject: org.apache.lucene.search.TopScoreDocCollector throws NullPointerException From: Thomas Fuchs To: java-user@lucene.apache.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Hi, I have a webapp with a working Lucene search function. The indexed documents contain among others two TextFields called "name" and "fulltext". The "name" TextField holds only one term, for example "bgh". The default field for query terms is "fulltext". The query "+name:bgh" leads to a NullPointerException thrown by org.apache.lucene.search.TopScoreDocCollector. Here are some lines which I detached from my webapp to illustrate the situation: [=E2=80=A6] IndexWriter writer =3D [=E2=80=A6] Document doc =3D new Document(); doc.add(new TextField("name", "bgh", Field.Store.NO)); doc.add(new TextField("fulltext", "[A long string of text.]", Field.Store.N= O)); writer.addDocument(doc); [=E2=80=A6] IndexSearcher searcher =3D [=E2=80=A6] Analyzer analyzer =3D new StandardAnalyzer(Version.LUCENE_45); QueryParser parser =3D new QueryParser(Version.LUCENE_45, "fulltext", analy= zer); Query query =3D parser.parse("+name:bgh"); TopScoreDocCollector collector =3D TopScoreDocCollector.create(0x100, true)= ; searcher.search(query, collector); ScoreDoc[] hits =3D collector.topDocs().scoreDocs; [=E2=80=A6] Line "searcher.search(query, collector);" of "Search.java:93" throws: java.lang.NullPointerException at org.apache.lucene.search.TopScoreDocCollector$InOrderTopScoreDocCollecto= r.collect(TopScoreDocCollector.java:54) at org.apache.lucene.search.Scorer.score(Scorer.java:65) at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:627) at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:309) at com.lexetius.iudicia.Search.getResult(Search.java:93) at com.lexetius.iudicia.SearchPanel$1.onSubmit(SearchPanel.java:29) at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1259) at org.apache.wicket.markup.html.form.Form.process(Form.java:925) at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:771) at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:704) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav= a:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor= Impl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListene= rInterface.java:258) at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterfa= ce.java:216) at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.i= nvokeListener(ListenerInterfaceRequestHandler.java:240) at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.r= espond(ListenerInterfaceRequestHandler.java:226) at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(Req= uestCycle.java:861) at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStac= k.java:64) at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:2= 61) at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle= .java:218) at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(Req= uestCycle.java:289) at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketF= ilter.java:259) at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter= .java:201) at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:= 282) at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHan= dler.java:1474) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:49= 9) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java= :137) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:5= 33) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.= java:231) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.= java:1086) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428= ) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.j= ava:193) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.j= ava:1020) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java= :135) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(Context= HandlerCollection.java:255) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollect= ion.java:154) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja= va:116) at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.j= ava:317) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.ja= va:116) at org.eclipse.jetty.server.Server.handle(Server.java:370) at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHt= tpConnection.java:489) at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConn= ection.java:960) at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(A= bstractHttpConnection.java:1021) at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865) at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240) at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.= java:82) at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPo= int.java:668) at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoi= nt.java:52) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.j= ava:608) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.ja= va:543) at java.lang.Thread.run(Thread.java:695) I don't think thats an expected behavior and it is a bug in org.apache.lucene.search.TopScoreDocCollector. Am I wrong? Regards - Thomas --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org For additional commands, e-mail: java-user-help@lucene.apache.org