blob: a19b86520ba67199ff4bc34714e064520a9976ae [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta content="Apache Forrest" name="Generator">
<meta name="Forrest-version" content="0.8">
<meta name="Forrest-skin-name" content="lucene">
<title>
Apache Lucene - Building and Installing the Basic Demo
</title>
<link type="text/css" href="skin/basic.css" rel="stylesheet">
<link media="screen" type="text/css" href="skin/screen.css" rel="stylesheet">
<link media="print" type="text/css" href="skin/print.css" rel="stylesheet">
<link type="text/css" href="skin/profile.css" rel="stylesheet">
<script src="skin/getBlank.js" language="javascript" type="text/javascript"></script><script src="skin/getMenu.js" language="javascript" type="text/javascript"></script><script src="skin/fontsize.js" language="javascript" type="text/javascript"></script>
<link rel="shortcut icon" href="images/favicon.ico">
</head>
<body onload="init()">
<script type="text/javascript">ndeSetTextSize();</script>
<div id="top">
<!--+
|breadtrail
+-->
<div class="breadtrail">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://lucene.apache.org/">Lucene</a><script src="skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script>
</div>
<!--+
|header
+-->
<div class="header">
<!--+
|start group logo
+-->
<div class="grouplogo">
<a href="http://lucene.apache.org/"><img class="logoImage" alt="Lucene" src="http://www.apache.org/images/asf_logo_simple.png" title="Apache Lucene"></a>
</div>
<!--+
|end group logo
+-->
<!--+
|start Project Logo
+-->
<div class="projectlogo">
<a href="http://lucene.apache.org/java/"><img class="logoImage" alt="Lucene" src="http://lucene.apache.org/images/lucene_green_300.gif" title="Apache Lucene is a high-performance, full-featured text search engine library written entirely in
Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform."></a>
</div>
<!--+
|end Project Logo
+-->
<!--+
|start Search
+-->
<div class="searchbox">
<form action="http://search.lucidimagination.com/p:lucene" method="get" class="roundtopsmall">
<input onFocus="getBlank (this, 'Search the site with Lucene');" size="25" name="q" id="query" type="text" value="Search the site with Lucene">&nbsp;
<input name="Search" value="Search" type="submit">
</form>
<div style="position: relative; top: -5px; left: -10px">Powered by <a href="http://www.lucidimagination.com" style="color: #033268">Lucid Imagination</a>
</div>
</div>
<!--+
|end search
+-->
<!--+
|start Tabs
+-->
<ul id="tabs">
<li class="current">
<a class="selected" href="http://lucene.apache.org/java/docs/">Main</a>
</li>
<li>
<a class="unselected" href="http://wiki.apache.org/lucene-java">Wiki</a>
</li>
<li class="current">
<a class="selected" href="index.html">Lucene 2.4.1 Documentation</a>
</li>
</ul>
<!--+
|end Tabs
+-->
</div>
</div>
<div id="main">
<div id="publishedStrip">
<!--+
|start Subtabs
+-->
<div id="level2tabs"></div>
<!--+
|end Endtabs
+-->
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
// --></script>
</div>
<!--+
|breadtrail
+-->
<div class="breadtrail">
&nbsp;
</div>
<!--+
|start Menu, mainarea
+-->
<!--+
|start Menu
+-->
<div id="menu">
<div onclick="SwitchMenu('menu_1.1', 'skin/')" id="menu_1.1Title" class="menutitle">Documentation</div>
<div id="menu_1.1" class="menuitemgroup">
<div class="menuitem">
<a href="index.html">Overview</a>
</div>
<div onclick="SwitchMenu('menu_1.1.2', 'skin/')" id="menu_1.1.2Title" class="menutitle">Javadocs</div>
<div id="menu_1.1.2" class="menuitemgroup">
<div class="menuitem">
<a href="api/index.html">All</a>
</div>
<div class="menuitem">
<a href="api/core/index.html">Core</a>
</div>
<div class="menuitem">
<a href="api/demo/index.html">Demo</a>
</div>
<div onclick="SwitchMenu('menu_1.1.2.4', 'skin/')" id="menu_1.1.2.4Title" class="menutitle">Contrib</div>
<div id="menu_1.1.2.4" class="menuitemgroup">
<div class="menuitem">
<a href="api/contrib-analyzers/index.html">Analyzers</a>
</div>
<div class="menuitem">
<a href="api/contrib-ant/index.html">Ant</a>
</div>
<div class="menuitem">
<a href="api/contrib-bdb/index.html">Bdb</a>
</div>
<div class="menuitem">
<a href="api/contrib-bdb-je/index.html">Bdb-je</a>
</div>
<div class="menuitem">
<a href="api/contrib-benchmark/index.html">Benchmark</a>
</div>
<div class="menuitem">
<a href="api/contrib-highlighter/index.html">Highlighter</a>
</div>
<div class="menuitem">
<a href="api/contrib-instantiated/index.html">Instantiated</a>
</div>
<div class="menuitem">
<a href="api/contrib-lucli/index.html">Lucli</a>
</div>
<div class="menuitem">
<a href="api/contrib-memory/index.html">Memory</a>
</div>
<div class="menuitem">
<a href="api/contrib-misc/index.html">Miscellaneous</a>
</div>
<div class="menuitem">
<a href="api/contrib-queries/index.html">Queries</a>
</div>
<div class="menuitem">
<a href="api/contrib-regex/index.html">Regex</a>
</div>
<div class="menuitem">
<a href="api/contrib-snowball/index.html">Snowball</a>
</div>
<div class="menuitem">
<a href="api/contrib-spellchecker/index.html">Spellchecker</a>
</div>
<div class="menuitem">
<a href="api/contrib-surround/index.html">Surround</a>
</div>
<div class="menuitem">
<a href="api/contrib-swing/index.html">Swing</a>
</div>
<div class="menuitem">
<a href="api/contrib-wikipedia/index.html">Wikipedia</a>
</div>
<div class="menuitem">
<a href="api/contrib-wordnet/index.html">Wordnet</a>
</div>
<div class="menuitem">
<a href="api/contrib-xml-query-parser/index.html">XML Query Parser</a>
</div>
</div>
</div>
<div class="menuitem">
<a href="benchmarks.html">Benchmarks</a>
</div>
<div class="menuitem">
<a href="contributions.html">Contributions</a>
</div>
<div class="menuitem">
<a href="http://wiki.apache.org/lucene-java/LuceneFAQ">FAQ</a>
</div>
<div class="menuitem">
<a href="fileformats.html">File Formats</a>
</div>
<div class="menuitem">
<a href="gettingstarted.html">Getting Started</a>
</div>
<div class="menuitem">
<a href="lucene-sandbox/index.html">Lucene Sandbox</a>
</div>
<div class="menuitem">
<a href="queryparsersyntax.html">Query Syntax</a>
</div>
<div class="menuitem">
<a href="scoring.html">Scoring</a>
</div>
<div class="menuitem">
<a href="http://wiki.apache.org/lucene-java">Wiki</a>
</div>
</div>
<div id="credit"></div>
<div id="roundbottom">
<img style="display: none" class="corner" height="15" width="15" alt="" src="skin/images/rc-b-l-15-1body-2menu-3menu.png"></div>
<!--+
|alternative credits
+-->
<div id="credit2"></div>
</div>
<!--+
|end Menu
+-->
<!--+
|start content
+-->
<div id="content">
<div title="Portable Document Format" class="pdflink">
<a class="dida" href="demo3.pdf"><img alt="PDF -icon" src="skin/images/pdfdoc.gif" class="skin"><br>
PDF</a>
</div>
<h1>
Apache Lucene - Building and Installing the Basic Demo
</h1>
<div id="minitoc-area">
<ul class="minitoc">
<li>
<a href="#About this Document">About this Document</a>
</li>
<li>
<a href="#About the Demos">About the Demos</a>
</li>
<li>
<a href="#Indexing Files">Indexing Files</a>
</li>
<li>
<a href="#Deploying the Demos">Deploying the Demos</a>
</li>
<li>
<a href="#Configuration">Configuration</a>
</li>
<li>
<a href="#Running the Demos">Running the Demos</a>
</li>
<li>
<a href="#About the code...">About the code...</a>
</li>
</ul>
</div>
<a name="N10013"></a><a name="About this Document"></a>
<h2 class="boxed">About this Document</h2>
<div class="section">
<p>
This document is intended as a "getting started" guide to installing and running the Lucene
web application demo. This guide assumes that you have read the information in the previous two
examples. We'll use Tomcat as our reference web container. These demos should work with nearly any
container, but you may have to adapt them appropriately.
</p>
</div>
<a name="N1001C"></a><a name="About the Demos"></a>
<h2 class="boxed">About the Demos</h2>
<div class="section">
<p>
The Lucene Web Application demo is a template web application intended for deployment on Tomcat or a
similar web container. It's NOT designed as a "best practices" implementation by ANY means. It's
more of a "hello world" type Lucene Web App. The purpose of this application is to demonstrate
Lucene. With that being said, it should be relatively simple to create a small searchable website
in Tomcat or a similar application server.
</p>
</div>
<a name="N10025"></a><a name="Indexing Files"></a>
<h2 class="boxed">Indexing Files</h2>
<div class="section">
<p> Once you've gotten this far you're probably itching to go. Let's start by creating the index
you'll need for the web examples. Since you've already set your CLASSPATH in the previous examples,
all you need to do is type:
<pre>
java org.apache.lucene.demo.IndexHTML -create -index {index-dir} ..
</pre>
You'll need to do this from a (any) subdirectory of your <span class="codefrag">{tomcat}/webapps</span> directory
(make sure you didn't leave off the <span class="codefrag">..</span> or you'll get a null pointer exception).
<span class="codefrag">{index-dir}</span> should be a directory that Tomcat has permission to read and write, but is
outside of a web accessible context. By default the webapp is configured to look in
<span class="codefrag">/opt/lucene/index</span> for this index.
</p>
</div>
<a name="N1003D"></a><a name="Deploying the Demos"></a>
<h2 class="boxed">Deploying the Demos</h2>
<div class="section">
<p>Located in your distribution directory you should see a war file called
<span class="codefrag">luceneweb.war</span>. If you're working with a Subversion checkout, this will be under the
<span class="codefrag">build</span> subdirectory. Copy this to your <span class="codefrag">{tomcat-home}/webapps</span> directory.
You may need to restart Tomcat. </p>
</div>
<a name="N1004F"></a><a name="Configuration"></a>
<h2 class="boxed">Configuration</h2>
<div class="section">
<p> From your Tomcat directory look in the <span class="codefrag">webapps/luceneweb</span> subdirectory. If it's not
present, try browsing to <span class="codefrag">http://localhost:8080/luceneweb</span> (which causes Tomcat to deploy
the webapp), then look again. Edit a file called <span class="codefrag">configuration.jsp</span>. Ensure that the
<span class="codefrag">indexLocation</span> is equal to the location you used for your index. You may also customize
the <span class="codefrag">appTitle</span> and <span class="codefrag">appFooter</span> strings as you see fit. Once you have finished
altering the configuration you may need to restart Tomcat. You may also wish to update the war file
by typing <span class="codefrag">jar -uf luceneweb.war configuration.jsp</span> from the <span class="codefrag">luceneweb</span>
subdirectory. (The -u option is not available in all versions of jar. In this case recreate the
war file).
</p>
</div>
<a name="N10070"></a><a name="Running the Demos"></a>
<h2 class="boxed">Running the Demos</h2>
<div class="section">
<p>Now you're ready to roll. In your browser set the url to
<span class="codefrag">http://localhost:8080/luceneweb</span> enter <span class="codefrag">test</span> and the number of items per
page and press search.</p>
<p>You should now be looking either at a number of results (provided you didn't erase the Tomcat
examples) or nothing. If you get an error regarding opening the index, then you probably set the
path in <span class="codefrag">configuration.jsp</span> incorrectly or Tomcat doesn't have permissions to the index
(or you skipped the step of creating it). Try other search terms. Depending on the number of items
per page you set and results returned, there may be a link at the bottom that says <b>More
Results&gt;&gt;</b>; clicking it takes you to subsequent pages. </p>
</div>
<a name="N10088"></a><a name="About the code..."></a>
<h2 class="boxed">About the code...</h2>
<div class="section">
<p>
If you want to know more about how this web app works or how to customize it then <a href="demo4.html">read on&gt;&gt;&gt;</a>.
</p>
</div>
</div>
<!--+
|end content
+-->
<div class="clearboth">&nbsp;</div>
</div>
<div id="footer">
<!--+
|start bottomstrip
+-->
<div class="lastmodified">
<script type="text/javascript"><!--
document.write("Last Published: " + document.lastModified);
// --></script>
</div>
<div class="copyright">
Copyright &copy;
2006 <a href="http://www.apache.org/licenses/">The Apache Software Foundation.</a>
</div>
<!--+
|end bottomstrip
+-->
</div>
</body>
</html>