As the titles states, how is a custom Sitecore ContentSearch index created? I end up with [ConfigurationErrorsException: Index has no configuration.]
Sitecore.ContentSearch.LuceneProvider.LuceneIndex.Initialize() +374 each time I try to add in a custom index.
EDIT:
Looking for a basic sample standalone configuration. Copying / Pasting sitecore_master_index or sitecore_web_index indexes results in the error.
This problem occurs because sitecore_master_index and sitecore_web_index configuration do not contain <Configuration> section.
Add in those indexes definition following node and you should not get this error
(*Sitecore.ContentSearch.Lucene.Index.Core.config, Sitecore.ContentSearch.Lucene.Index.Master.config,
Sitecore.ContentSearch.Lucene.Index.Web.config*):
<Configuration ref="contentSearch/configuration/defaultIndexConfiguration"/>
I don't know why it is like that, but it looks like Sitecore's provided index samples do not like it when you try to add your own custom index configuration.
Have a look at Autohaus on Github. Its a custom Sitecore website built by Alex Shyba and Tim Ward. It has a custom index in there to search all the vehicles so you should be able to follow that and see how its done.
On an overview, they have created a new config and referenced the new index name and created an ISearchIndex object using Sitecore.ContentSearch.ContentSearchManager.GetIndex("index_name");. How are you creating your ISearchIndex object?
Related
I am working on a template that have a General Link field, when I am trying to set the Insert link on Sitecore Content Editor I am getting below crash:
I am working on Sitecore 8.0 (rev.150121)
Even though the other General link options is working fine:
Insert media link
Insert external link
Insert anchor
Insert email
Insert JavaScript
I added a new field to the same template as a general link filed as well and it is working fine even for the Insert link option.
when I view the Raw value for the item I found that the link had a default value set to "" when I removed it and save all is working fine, the other testing link that I added do not have this default value, and the field on the template itself do not have such value or any default value.
This is a duplication of the question found on the Sitecore StackExchange here. Just to avoid any open question, here is the answer as provided in the same question:
The issue you reported was fixed in Sitecore Experience Platform 8.0 rev. 150621 (8.0 Update-4) and you can upgrade your solution to address the problem.
Please take a look at the reference number 416281 in Sitecore CMS release notes on for additional details on the fix: https://dev.sitecore.net/Downloads/Sitecore%20Experience%20Platform/8%200/Sitecore%20Experience%20Platform%2080%20Update4/Release%20notes
If upgrade is not an option for you, we suggest you implement the following workaround to resolve the issue on your current solution:
Place the attached Sitecore.Support.416281 assembly to the \bin folder of your solution;
Open /sitecore/system/Field types/Link Types/General Link item in the Core database;
Clean up its Control field;
Put Sitecore.Support.416281 in the Assembly field and Sitecore.Support.Link in the Class field;
Save changes.
Please download the assembly : https://www.dropbox.com/s/hl7ho6wmnca8u2y/Sitecore.Support.416281.dll?dl=0
I'm working on Sitecore 8 and want to add a new language but Im having a message:
The spell checker dictionary does not exist.
Could you please help me?
All the dictionary files are stored in sitecore\shell\Controls\Rich Text Editor\Dictionaries\ directory.
There is no en-AU dictionary there by default (there are en-UK and en-US dictionaries). You can use one of them I guess. Or you can try google en-AU and use something from the Internet "en-AU.tdf" google search.
I had the same issue. I was able to resolve it by editing the "InvalidItemNameChars" setting temporarily.
Our project had a patch for InvalidItemNameChars like this:
This setting is usually in web.config. If you don't find it there, check "/sitecore/admin/showconfig.aspx" for InvalidItemNameChars.
I had to remove the '-' from the value and create the language. You will not get the error on not selecting the spell checker. You can leave it empty.
Once you are done creating the language add the '-' back to the config (in my case it was a patch config).
I am using Sitecore 7.2 and weblog 2.3.
I have a blog with couple of Entries, the posts show up fine. I am trying to create a Custom Template "CustomEntry" that inherits "Entry"
I followed all the steps from the link https://github.com/WeTeam/WeBlog/wiki/Template-Settings. The Blog is now completely empty. While debugging, it appears that GetBlogEntries() is empty. I believe this is an Index related issue. There are couple of things unclear to me.
When creating a new template for Entry, I understand that I should inherit Entry. I have inherited both Entry and StandardTemplate and sorted the Entry to be above the Standard Template. Is this what I am supposed to do?
In the following code, what should be "", Should it be the Blog template that I am using. in my case CustomEntry? I understand that the value should be the ID for "CustomEntry" Template.
<locations hint="list:AddCrawler">
<master type="Sitecore.Modules.WeBlog.Search.Crawlers.DatabaseCrawler,Sitecore.Modules.WeBlog">
<include hint="list:IncludeTemplate" entryTemplate="$(EntryTemplateID)" commentTemplate="$(CommentTemplateID)">
<myEntry>{D5608C5D-45E4-43FA-B2E4-DCD9DDF3E5A1}</myEntry>
<myComment>{C85123CF-DA89-4C37-ACFA-4F8BA5157AC1}</myComment>
</include>
</master>
<web type="Sitecore.Modules.WeBlog.Search.Crawlers.DatabaseCrawler,Sitecore.Modules.WeBlog">
<include hint="list:IncludeTemplate" entryTemplate="$(EntryTemplateID)" commentTemplate="$(CommentTemplateID)">
<myEntry>{D5608C5D-45E4-43FA-B2E4-DCD9DDF3E5A1}</myEntry>
<myComment>{C85123CF-DA89-4C37-ACFA-4F8BA5157AC1}</myComment>
</include>
</web>
</locations>
Yes, you should create 3 templates each one will inherit from either BlogEntry, BlogCategory or BlogComment:
/sitecore/templates/Modules/WeBlog/BlogEntry /sitecore/templates/Modules/WeBlog/BlogCategory /sitecore/templates/Modules/WeBlog/BlogComment
The settings listed in the snippet are for the search index which you have setup on the master and web indexes.
These settings should be the template IDs of your new templates that inherit from the builtin templates. The names of the tags "myEntry" or "myComment" can be called whatever you like and only the Guid will be read from these tags.
<myEntry>{D5608C5D-45E4-43FA-B2E4-DCD9DDF3E5A1}</myEntry>
<myComment>{C85123CF-DA89-4C37-ACFA-4F8BA5157AC1}</myComment>
I would try rebuilding the search index called weBlog to see if this fixes the issue.
You have to make sure that you have blog entries published that are based on the new templates you have created.
You could use Luke -https://code.google.com/p/luke/ to examine the Sitecore indexes /data/indexes to see if you are getting blog items in your index.
We've got a Sitecore site where several items have broken links to an old workflow state that is no longer with us. I know that you can remove links when you delete an item, but I'm not seeing an interface to simple remove a broken link on an item, when the missing item is already gone.
What's the best way to remove broken links in this case? Thanks.
There is Sitecore admin page that allows removing broken links. You can find it here:
http://localhost/sitecore/admin/RemoveBrokenLinks.aspx
You just select the database and execute the action. You can also serialize all items changed during this process.
You may need to change timeout settings in web.config:
<setting name="DefaultSQLTimeout" value="10:00:00" />
<setting name="DataProviderTimeout" value="00:00:00" />
Sitecore maintains a table named Links in the database specified in the LinkDatabase section of web.config. You can get all broken links in following way:
Sitecore.Data.Database db = Sitecore.Context.Database;
Sitecore.Links.LinkDatabase linkDb = Sitecore.Globals.LinkDatabase;
Sitecore.Links.ItemLink[] brokenLinks = linkDb.GetBrokenLinks(db);
A long time ago I first setup a website in Umbraco. This seemed to be working fine.
I have now come back to it about a year later, and was initially getting the following error when selecting a Document Type (any document type in the Settings tab):
A bit weird, because earlier I didn't have this issue, but fine. I do what it says, and add <identity impersonate="true"/> to the <system.web> node in web.config.
While it does fix the initial issue, I now have the following on all document types:
When trying to create a new Document Type, I get the same kind of error, but then the ReturnUrl part is ReturnUrl=/umbraco/create.aspx?nodeId=init&nodeType=inittemplates&nodeName=Templates&rnd=20.2&rndo=21.2&nodeId=init&nodeType=inittemplates&nodeName=Templates&rnd=20.2&rndo=21.2' - but only if I tick the box 'Create template for this item'. The same happens when I try and create a Template.
After Googleing I came up with this: our.umbraco post with similar issue. One (unconfirmed) solution is that there's an illegal name in a document type/ template - but I haven't changed anything, and might be fixed by going into the database.
I did check the /masterpages folder, the only 'strange' characters in there are - and _.
In my Document Types I have on named 'Textpage (Two col)' and another named 'News & Events list'. I'm a bit hesitant to just delete them, since I don't have enough Umbraco knoledge to be sure this will fix my issue...
Is there any known solution for this, or will I also have to go into the database (and if so, whereabouts?)
I'm running Umbraco 4.7.2, assembly version 1.0.4500.21031.
I've hosted this site with GoDaddy.com - I don't know if that would be relevant.
[Update 1]
As per Tom Maton's comment:
The requirepermissions should be set to false, and have been.
in Appsettings I've set this:
<add key="umbracoUseMediumTrust" value="true" />
And I've added Trusted_Connection=yes to the connectionstring.
the problem remains.
[Update 2]
Tried the solution amelvin provided, but no dice. Doctypes and templates still give the error. I'm getting more certain it's some security issues. Which folder would correspond to the Templates? Would that be the masterpages folder? If so, what kind of permissions does that one need?
It could be that you don't have full trust on your Go Daddy environment?
Check this post out http://our.umbraco.org/forum/getting-started/installing-umbraco/17856-Umbraco-on-GoDaddy-Shared-Hosting
Could help resolve your issue.
The error could be a knock on from permissions errors as yet unsolved.
But the error is thrown if the content page does not have a template assigned or if Umbraco thinks it doesn't have a template. If absolutely nothing has changed to the site then it could be that the umbraco.config file has somehow got corrupted (it will contain all the doctype/template cross reference info). This can be fixed by right clicking on the top 'content' node and choose 'republish entire website'.
Secondly navigate to the settings | document types (if you can now) and check the templates dropdown on the first tab of the appropriate document type. If its set to 'please select' then this error will get thrown when any page tries to render without a valid template assigned. If a default template is assigned - then go to that template and re-publish it - Umbraco may have lost it.
If this does not work then check if the template is assigned properly. Go to the same place in the content tree as the problem page and try to add a node with the desired doctype. If no choices are offered then it could be that the parent tab no longer allows the correct doctypes as children nodes, so go back to the doctypes and check the allowed children (second tab) of the parent node.
If none of this works without odd errors being thrown then its a mystery!
Here are a list of Permissions required for Umbraco http://our.umbraco.org/wiki/reference/files-and-folders/permissions
Or you could use one of the steps below to check all the folder permissions.
http://our.umbraco.org/wiki/reference/files-and-folders/permissions/perform-permissions-check
Or install this package. http://our.umbraco.org/projects/backoffice-extensions/ugolive this will allow you to check the permissions are correctly setup.