I was following the official guidance, so dropped search box component to my header and configured search results parameter. Then created page /search and dropped search results on it. Tested and got an exception (from logs):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | Exception: SolrNet.Exceptions.SolrConnectionException
Message:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<title>Error 404 Not Found</title>
<h2>HTTP ERROR 404</h2>
<p>Problem accessing /solr/sitecore_sxa_master_index/schema. Reason:
</p><pre>Not Found</pre><p></p>
Source: SolrNet
at SolrNet.Impl.SolrConnection.Get(String relativeUrl, IEnumerable`1 parameters)
at Sitecore.ContentSearch.SolrNetExtension.Impl.SolrBasicServerEx`1.GetSchema(String collection)
at Sitecore.ContentSearch.SolrProvider.SolrSearchIndex.InitializeSchema()
at Sitecore.ContentSearch.SolrProvider.SolrSearchIndex.InitializeSolr()
Nested Exception
Exception: System.Net.WebException
Message: The remote server returned an error: (404) Not Found.
Source: System
at System.Net.HttpWebRequest.GetResponse()
at HttpWebAdapters.Adapters.HttpWebRequestAdapter.GetResponse()
at SolrNet.Impl.SolrConnection.GetResponse(IHttpWebRequest request)
at SolrNet.Impl.SolrConnection.Get(String relativeUrl, IEnumerable`1 parameters)
Exception: SolrNet.Exceptions.SolrConnectionException
|
Obviously, my SXA indexes got misconfigured, and Sitecore Indexing manager showed nothing there. I identified a responsible config file: App_Config/Modules/SXA/Z.Foundation.Overrides/Sitecore.XA.Foundation.Search.Solr.config
- it adds two SXA-related indexes as below (irrelevant lines skipped):
1 2 3 4 | < index id = "sitecore_sxa_master_index" >
< param desc = "name" >$(id)</ param >
< param desc = "core" >$(id)</ param >
</ index >
|
I tried populating schema:
But got such an exception:
Looking at Solr I've noticed that all my cores are prefixed (ie. Platform_master_index
) by the installation, so obviously there are no such cores (ie. sitecore_sxa_master_index
). Indexing Manager claims these as "never run". I decided to collocate SXA indexes within cores for corresponding databases, along with traditional non-SXA indexes. So that both indexes sitecore_master_index
and sitecore_sxa_mater_index
will reside within Platform_master_index
core.
So I ended up making this patch Foundation.ContentSearch.config
:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | < sitecore search:require = "solr" >
< contentSearch >
< configuration type = "Sitecore.ContentSearch.ContentSearchConfiguration, Sitecore.ContentSearch" >
< indexes hint = "list:AddIndex" >
< index id = "sitecore_sxa_master_index" type = "Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require = "Standalone or Reporting or ContentManagement or Processing" >
< param desc = "core" patch:instead = "param[@desc='core']" >Platform_master_index</ param >
</ index >
< index id = "sitecore_sxa_web_index" type = "Sitecore.ContentSearch.SolrProvider.SolrSearchIndex, Sitecore.ContentSearch.SolrProvider" role:require = "Standalone or ContentDelivery or ContentManagement or Reporting" >
< param desc = "core" patch:instead = "param[@desc='core']" >Platform_web_index</ param >
</ index >
</ indexes >
</ configuration >
</ contentSearch >
</ sitecore >
</ configuration >
|
Once patch applied, I've re-populated schema again and it worked and after refreshing the page search box worked well, including predictive search!