Hi, I am beginner in Apache lucene, I am using 5.3.1. I have created the index on the database result. The index values are having alphanumeric and strings values. I am able to search the strings but I am not able to search alphanumeric values.
Can someone help me here. Below is indexing code... int indexDocs(IndexWriter writer, Connection conn) throws Exception { Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); int i=0; while (rs.next()) { Document d = new Document(); // System.out.println("cpn is" + rs.getString("cpn")); // System.out.println("mpn is" + rs.getString("mpn")); d.add(new TextField("cpn", rs.getString("cpn"), Field.Store.YES)); writer.addDocument(d); i++; } } Searching code: private void searchIndex(Path indexDir, String queryStr) throws Exception { Directory directory = FSDirectory.open(indexDir); System.out.println("The query string is " + queryStr); // MultiFieldQueryParser queryParser = new MultiFieldQueryParser(new // String[] {"mpn"}, new StandardAnalyzer()); // IndexReader reader = IndexReader.open(directory); IndexReader reader = DirectoryReader.open(directory); IndexSearcher searcher = new IndexSearcher(reader); Analyzer analyzer = new StandardAnalyzer(); analyzer.tokenStream("cpn", queryStr); QueryParser parser = new QueryParser("cpn", analyzer); parser.setDefaultOperator(Operator.OR); parser.getAllowLeadingWildcard(); parser.setAutoGeneratePhraseQueries(true); Query query = parser.parse(queryStr); searcher.search(query, 100); TopDocs topDocs = searcher.search(query, MAX_HITS); ScoreDoc[] hits = topDocs.scoreDocs; System.out.println(hits.length + " Record(s) Found"); for (int i = 0; i < hits.length; i++) { int docId = hits[i].doc; Document d = searcher.doc(docId); System.out.println("\"value is:\" " + d.get("cpn")); } if (hits.length == 0) { System.out.println("No Data Founds "); } Thanks in advance. -- Keep Smiling.... Thanks & Regards Bhaskar. Mobile:9866724142