Introduction
------------
Solr Search Velocity Templates
A quick demo of using Solr using http://wiki.apache.org/solr/VelocityResponseWriter
You typically access these templates via:
http://localhost:8983/solr/collection1/browse
It's called "browse" because you can click around with your mouse
without needing to type any search terms. And of course it
also works as a standard search app as well.
Known Limitations
-----------------
* The /browse and the VelocityResponseWriter component
serve content directly from Solr, which usually requires
Solr's HTTP API to be exposed. Advanced users could
potentially access other parts of Solr directly.
* There are some hard coded fields in these templates.
Since these templates live under conf, they should be
considered part of the overall configuration, and
must be coordinated with schema.xml and solrconfig.xml
Velocity Info
-------------
Java-based template language.
It's nice in this context because change to the templates
are immediately visible in browser on the next visit.
Links:
http://velocity.apache.org
http://wiki.apache.org/velocity/
http://velocity.apache.org/engine/releases/velocity-1.7/user-guide.html
File List
---------
System and Misc:
VM_global_library.vm - Macros used other templates,
exact filename is important for Velocity to see it
error.vm - shows errors, if any
debug.vm - includes toggle links for "explain" and "all fields"
activated by debug link in footer.vm
README.txt - this file
Overall Page Composition:
browse.vm - Main entry point into templates
layout.vm - overall HTML page layout
head.vm - elements in the <head> section of the HTML document
header.vm - top section of page visible to users
footer.vm - bottom section of page visible to users,
includes debug and help links
main.css - CSS style for overall pages
see also jquery.autocomplete.css
Query Form and Options:
query_form.vm - renders query form
query_group.vm - group by fields
e.g.: Manufacturer or Poplularity
query_spatial.vm - select box for location based Geospacial search
Spelling Suggestions:
did_you_mean.vm - hyperlinked spelling suggestions in results
suggest.vm - dynamic spelling suggestions
as you type in the search form
jquery.autocomplete.js - supporting files for dynamic suggestions
jquery.autocomplete.css - Most CSS is defined in main.css
Search Results, General:
(see also browse.vm)
tabs.vm - provides navigation to advanced search options
pagination_top.vm - paging and staticis at top of results
pagination_bottom.vm - paging and staticis at bottom of results
results_list.vm
hit.vm - called for each matching doc,
decides which template to use
hit_grouped.vm - display results grouped by field values
product_doc.vm - display a Product
join_doc.vm - display a joined document
richtext_doc.vm - display a complex/misc. document
hit_plain.vm - basic display of all fields,
edit results_list.vm to enable this
Search Results, Facets & Clusters:
facets.vm - calls the 4 facet and 1 cluster template
facet_fields.vm - display facets based on field values
e.g.: fields specified by &facet.field=
facet_queries.vm - display facets based on specific facet queries
e.g.: facets specified by &facet.query=
facet_ranges.vm - display facets based on ranges
e.g.: ranges specified by &facet.range=
facet_pivot.vm - display pivot based facets
e.g.: facets specified by &facet.pivot=
cluster.vm - if clustering is available
then call cluster_results.vm
cluster_results.vm - actual rendering of clusters