|
FlatFileSearchSource Demo
|
This demo uses a FlatFileSearchSource configured to search an Excel spreadsheet saved as a CSV file which
contains a number of links to technical references.
The format of the flat file is:
URL,Title,Keywords
http://www.w3.org/TR/soap12-part0/,SOAP Version 1.2 Part 0: Primer,SOAP
file:///C:\Java\jdk1.4\docs\api\index.html,Java 1.4 Javadoc,Java 1.4
...
JSP Code for the demo:
<search:SearchForm
formName="TechLinks"
categoryName="TechLinks"
action="FlatFileSearchSource.jsp"
/>
<center>
<results:PageLinkForm
rendererClass="com.raritantechnologies.quickstart.taglibrary.VCRPageLinkRenderer"
pageSize="10" isFirst="true" />
</center>
<results:DisplayForm formName="TechLinksDisplay" pageSize="20" />
XML Configuration for this demo:
Search Form Configuration:
<!-- ====================================================================== -->
<!-- SearchForm for FlatFileSearchSource (TechLinks) demo -->
<!-- ====================================================================== -->
<SearchForm name="TechLinks" category="TechLinks" >
<Field ID="Title" type="text" width="50" name="Title" />
<Field ID="Keywords" type="text" width="50" name="Keywords" />
</SearchForm>
Display Form Configuration:
<!-- ===================================================================== -->
<!-- DisplayForm for FlatFileSearchSource -->
<!-- ===================================================================== -->
<DisplayForm name="TechLinksDisplay"
rendererClass="com.raritantechnologies.quickstart.taglibrary.GridDisplayFormRenderer"
tableProps="width='100%' border='0' cellpadding='1' cellspacing='0' class='itemTable'"
action="FlatFileSearchSource.jsp"
defaultSortField="Title" defaultSortDir="asc" >
<Columns>
<!-- =============================================================== -->
<!-- Title Column -->
<!-- =============================================================== -->
<Column name="Title" width="450" sortable="true" class="itemCell" >
<HeaderRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SortHeaderRenderer"
action="FlatFileSearchSource.jsp"
displayName="Title" name="Title" align="center" displayType="double" linkText="true"
activeClass="inactiveSort" inactiveClass="inactiveSort"
ascActiveIcon="/FrameworkDocumentation/images/arrowup_off.gif"
dscActiveIcon="/FrameworkDocumentation/images/arrowdwn_off.gif"
ascInactiveIcon="/FrameworkDocumentation/images/arrowup.gif"
dscInactiveIcon="/FrameworkDocumentation/images/arrowdwn.gif" />
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.FieldHyperlinkRenderer"
target="_top" >
<HrefField ID="URL" />
<LabelField ID="Title" />
</ResultRenderer>
</Column>
<!-- =============================================================== -->
<!-- Keywords Column -->
<!-- =============================================================== -->
<Column name="Keywords" width="250" sortable="false" class="itemCell" >
<HeaderRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SortHeaderRenderer"
action="FlatFileSearchSource.jsp"
displayName="Keywords" name="Keywords" align="center" displayType="none"
activeClass="inactiveSort" inactiveClass="inactiveSort" />
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SimpleFieldRenderer" >
<Field ID="Keywords" />
</ResultRenderer>
</Column>
</Columns>
</DisplayForm>
FlatFileSearchSource configuration:
<SourceType name="TechLinks" type="FlatFileSource"
sourceFactoryClass="com.raritantechnologies.searchApp.FlatFileSearchSource"
queryProcessor="com.raritantechnologies.searchApp.FlatFileSearchSource"
delimiter=","
blankQueryReturnsAll="true"
fieldOperator="AND" caseSensitive="false" >
<Columns>
<Column>URL</Column>
<Column>Title</Column>
<Column>Keywords</Column>
</Columns>
<Files>
<File name="BASE_PATH/data/TechnologyLinks/TechnologyLinks.csv" />
</Files>
</SourceType>