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 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