|
ExplorerSourceMapTreeRenderer Example
|
The ExplorerSourceMapTreeRenderer is used in the
Raritan Federated
demo application to select sources by taxonomy browsing.
JSP Tag used in this example:
<search:SourceMapTree
sourceMapTreeName="Subjects"
sourceMapName="TreeSources"
rendererName="basicRenderer"
sourceTreeURL="TreeView.jsp"
searchFormName="AdvancedSearch"
searchFormURL="TreeView.jsp"
displayFormName="brief"
pageSize="10"
/>
XML Configuration for this Example:
From the application SourceMap.xml:
<!-- ============================================================================= -->
<!-- Source Map Tree for Source browsing -->
<!-- ============================================================================= -->
<SourceMapTree name="Subjects" param="treepath" >
<SourceMapTreeNode name="News" displayFormName="brief" searchForm="AdvancedSearch" category="news" />
<SourceMapTreeNode name="Healthcare" displayFormName="brief" searchForm="AdvancedSearch" >
<SourceMapTreeNode name="Consumer" displayFormName="brief"
searchForm="AdvancedSearch" category="consumerHealth" />
<SourceMapTreeNode name="Research" displayFormName="brief"
searchForm="AdvancedSearch" category="healthcare" >
<SourceMapTreeNode name="Cardiology" displayFormName="brief"
searchForm="AdvancedSearch" category="healthcare" />
<SourceMapTreeNode name="Oncology" displayFormName="brief"
searchForm="AdvancedSearch" category="healthcare" />
</SourceMapTreeNode>
</SourceMapTreeNode>
<SourceMapTreeNode name="Government" displayFormName="brief" searchForm="AdvancedSearch" category="government" />
</SourceMapTree>
<!-- ============================================================================= -->
<!-- SourceMapTreeRenderer combines above SourceMapTree and BasicSourceMap -->
<!-- ============================================================================= -->
<SourceMapTreeRenderers>
<SourceMapTreeRenderer name="basicRenderer"
class="com.raritantechnologies.searchApp.sourceMap.taglibrary.ExplorerSourceMapTreeRenderer"
openNodeImg="./images/plus.gif"
closeNodeImg="./images/minus.gif"
treeBgColor="#dfdfdf"
searchBgColor="#cceeff"
resultBgColor="#eeeeee"
treeWidth="200"
searchResultWidth="600"
tableHeight="100%"
tableClass="sourceMapTreeControl"
savePageParams="false" >
<PageLinkRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.CompositePageLinkRenderer"
position="both" alignment="sizeRight" pageURL="TreeView.jsp"
break=" | " pageSizeText="Results per page: " >
<pageSize size="10" />
<pageSize size="20" />
<pageSize size="50" />
<pageSize size="100" />
</PageLinkRenderer>
</SourceMapTreeRenderer>
</SourceMapTreeRenderers>
Search Forms Configuration :
(Source dependent search forms selected by SourceMapTree configuration above)
<!-- ================================================ -->
<!-- SearchForm for healthcare sites -->
<!-- ================================================ -->
<SearchForm name="AdvancedSearch" category="healthcare" >
<!-- <Field ID="TI" type="text" width="50" name="Title" />
<Field ID="AU" type="text" width="50" name="Author" /> -->
<Field ID="KY" type="text" width="50" name="Keywords" />
<DisplayOptions>
<PageSize>
<Option value="10" default="true" />
<Option value="20" />
<Option value="50" />
</PageSize>
</DisplayOptions>
</SearchForm>
<!-- ================================================ -->
<!-- SearchForm for news sites -->
<!-- ================================================ -->
<SearchForm name="AdvancedSearch" category="news" >
<Field ID="KY" type="text" width="50" name="Keywords" />
<DisplayOptions>
<PageSize>
<Option value="10" default="true" />
<Option value="20" />
<Option value="50" />
</PageSize>
</DisplayOptions>
</SearchForm>
<!-- ================================================ -->
<!-- SearchForm for consumer Health sites -->
<!-- ================================================ -->
<SearchForm name="AdvancedSearch" category="consumerHealth" >
<Field ID="KY" type="text" width="50" name="Keywords" />
<DisplayOptions>
<PageSize>
<Option value="10" default="true" />
<Option value="20" />
<Option value="50" />
</PageSize>
</DisplayOptions>
</SearchForm>
<!-- ================================================ -->
<!-- SearchForm for Government sites -->
<!-- ================================================ -->
<SearchForm name="AdvancedSearch" category="government" >
<Field ID="CO" type="text" width="50" name="Company" />
<Field ID="AU" type="text" width="50" name="Author" />
<Field ID="KY" type="text" width="50" name="Keywords" />
<DisplayOptions>
<PageSize>
<Option value="10" default="true" />
<Option value="20" />
<Option value="50" />
</PageSize>
</DisplayOptions>
</SearchForm>
Display Form Configuration:
(Uses DynamicResultRenderer to enable a single DisplayForm to be used for different
result types).
<DisplayForm name="brief"
rendererClass="com.raritantechnologies.quickstart.taglibrary.TableDisplayFormRenderer"
bgcolor1="#ffffff" bgcolor2="#EDF3FE" >
<ResultRenderer
rendererClass="com.raritantechnologies.searchApp.taglibrary.DynamicResultRenderer"
name="federatedRenderer"
matchOn="show" >
<UseRenderer sourceName="MedlineSource,Medline,Toxline" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxResultRenderer"
formField="theID" width="50" cacheResultSetName="SelectedRecords" >
<Field ID="url" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.XSLResultRenderer"
align="left" valign="top" defaultString=" " width="550">
<Source name="Medline" xslFile="BASE_PATH/WEB-INF/conf/Medline/MedlineDisplayTransform.xsl" />
<Source name="MedlineSource" xslFile="BASE_PATH/WEB-INF/conf/Medline/MedlineDisplayTransform.xsl" />
<Source name="Toxline" xslFile="BASE_PATH/WEB-INF/conf/Toxline/ToxlineDisplayTransform.xsl" />
</ResultRenderer>
</ResultRenderer>
</UseRenderer>
<UseRenderer sourceName="BusinessWeek,CBSNews" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultRowRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxResultRenderer"
formField="theID" width="50" cacheResultSetName="SelectedRecords" >
<Field ID="url" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.FieldHyperlinkRenderer"
width="550" >
<HrefField ID="url" />
<LabelField ID="title" />
</ResultRenderer>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SimpleFieldRenderer"
width="600" >
<Field ID="summary" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.LabelRenderer"
width="100" >
<Label>Source:</Label>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SimpleFieldRenderer"
width="500" >
<Field ID="source" />
</ResultRenderer>
</ResultRenderer>
</ResultRenderer>
</UseRenderer>
<UseRenderer sourceNames="MayoClinic,WebMD" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxResultRenderer"
formField="theID" width="50" cacheResultSetName="SelectedRecords" >
<Field ID="url" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.XSLResultRenderer"
align="left" valign="top" defaultString=" " width="550">
<Source name="MayoClinic" xslFile="BASE_PATH/WEB-INF/conf/MayoClinic/MayoClinicDisplayTransform.xsl" />
<Source name="WebMD" xslFile="BASE_PATH/WEB-INF/conf/WebMD/WebMDDisplayTransform.xsl" />
</ResultRenderer>
</ResultRenderer>
</UseRenderer>
<UseRenderer sourceNames="ClinicalTrials" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultRowRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxResultRenderer"
formField="theID" width="50" cacheResultSetName="SelectedRecords" >
<Field ID="url" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.FieldHyperlinkRenderer"
width="550" >
<HrefField ID="url" />
<LabelField ID="title" />
</ResultRenderer>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.LabelRenderer"
width="100" >
<Label>Condition:</Label>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SimpleFieldRenderer"
width="200" >
<Field ID="Condition" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.LabelRenderer"
width="100" >
<Label>Recruiting:</Label>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.SimpleFieldRenderer"
width="200" >
<Field ID="Recruiting" />
</ResultRenderer>
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.LabelRenderer"
width="100" >
<Label>Source: Clinical Trials</Label>
</ResultRenderer>
</ResultRenderer>
</UseRenderer>
<UseRenderer sourceNames="USPatentOffice" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.ResultColumnRenderer"
width="600" >
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxResultRenderer"
formField="theID" width="50" cacheResultSetName="SelectedRecords" >
<Field ID="url" />
</ResultRenderer>
<ResultRenderer rendererClass="com.raritantechnologies.quickstart.taglibrary.XSLResultRenderer"
align="left" valign="top" defaultString=" " width="550">
<Source name="USPatentOffice" xslFile="BASE_PATH/WEB-INF/conf/USPatentOffice/USPTODisplayTransform.xsl" />
</ResultRenderer>
</ResultRenderer>
</UseRenderer>
</ResultRenderer>
</DisplayForm>