Giter Site home page Giter Site logo

sitecore-item-buckets's People

Contributors

jerrong avatar katebutenko avatar ob1dev avatar seankearney avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sitecore-item-buckets's Issues

Downloads for CMS V6.3.1

Hi everyone, where can I find the downloads for CMS V6.3.1? I assume this works with the Sitecore Intranet Portal as well, correct?

Thanks in advance.

Module doesn't work with disabled Sitecore.ItemBuckets.Scaling.config

see theme. Error is logged when try to search for anything:

8724 17:23:26 ERROR Failed to Resolve Media Source
Exception: System.NullReferenceException
Message: Object reference not set to an instance of an object.
Source: Sitecore.ItemBucket.UI
at ItemBuckets.ShowResult.Page_Load(Object sender, EventArgs e) in C:\inetpub\wwwroot\scItemBuckets\Website\sitecore modules\Shell\Sitecore\ItemBuckets\ShowResult.aspx.cs:line 39

8724 17:23:31 ERROR Application error.
Exception: System.InvalidOperationException
Message: Could not find configuration node: search/remoteconfiguration
Source: Sitecore.Kernel
at Sitecore.Diagnostics.Assert.IsTrue(Boolean condition, String message)
at Sitecore.Diagnostics.Assert.IsTrue(Boolean condition, String format, Object[] args)
at Sitecore.Configuration.Factory.GetConfigNode(String xpath, Boolean assert)
at Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert)
at Sitecore.Configuration.Factory.CreateObject(String configPath, Boolean assert)
at RemoteSearchManager.get_RemoteSearchSearchConfiguration()
at RemoteSearchManager.Initialize()
at Sitecore.ItemBucket.Kernel.Managers.BucketManager.GetContextIndex(Item item) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\Managers\BucketManager.cs:line 112
at Sitecore.ItemBucket.Kernel.Util.IndexSearcher.GetItems(DateRangeSearchParam param) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\Util\Searcher.cs:line 408
at Sitecore.ItemBucket.Kernel.ItemExtensions.Axes.ItemExtensions.FullSearch(Item itm, List`1 currentSearchString, Int32& hitCount, String indexName, String sortField, String sortDirection, Int32 pageSize, Int32 pageNumber, Object[] parameters) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\ItemExtensions\Axes\ItemExtensions.cs:line 103
at ItemBuckets.Services.Search.ProcessRequest(HttpContext context) in C:\inetpub\wwwroot\scItemBuckets\Website\sitecore modules\Shell\Sitecore\ItemBuckets\Services\Search.ashx.cs:line 81
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

9080 17:23:31 ERROR Application error.
Exception: System.InvalidOperationException
Message: Could not find configuration node: search/remoteconfiguration
Source: Sitecore.Kernel
at Sitecore.Diagnostics.Assert.IsTrue(Boolean condition, String message)
at Sitecore.Diagnostics.Assert.IsTrue(Boolean condition, String format, Object[] args)
at Sitecore.Configuration.Factory.GetConfigNode(String xpath, Boolean assert)
at Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert)
at Sitecore.Configuration.Factory.CreateObject(String configPath, Boolean assert)
at RemoteSearchManager.get_RemoteSearchSearchConfiguration()
at RemoteSearchManager.Initialize()
at Sitecore.ItemBucket.Kernel.Managers.BucketManager.GetContextIndex(Item item) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\Managers\BucketManager.cs:line 112
at Sitecore.ItemBucket.Kernel.Util.IndexSearcher.GetItems(DateRangeSearchParam param) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\Util\Searcher.cs:line 408
at Sitecore.ItemBucket.Kernel.ItemExtensions.Axes.ItemExtensions.FullSearch(Item itm, List`1 currentSearchString, Int32& hitCount, String indexName, String sortField, String sortDirection, Int32 pageSize, Int32 pageNumber, Object[] parameters) in C:\inetpub\wwwroot\scItemBuckets\src\ItemBucket.Kernel\Kernel\ItemExtensions\Axes\ItemExtensions.cs:line 103
at ItemBuckets.Services.Search.ProcessRequest(HttpContext context) in C:\inetpub\wwwroot\scItemBuckets\Website\sitecore modules\Shell\Sitecore\ItemBuckets\Services\Search.ashx.cs:line 81
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

How do I generate a NuGet package?

I need to generate a NuGet package. The TDS files have been removed, when I point it to my local TDS instance it fails. If I roll back and include the TDS files that were omitted it works, it looks like Hedgehog has changed the API for the package builder (or disabled the functionality). How do I script a package build?

ItemBucket Field Null Object Issue

Caused by using the Sitecore.Context.Item without checking for null first within the DoRender method of the ItemBucket.cs file. Within that method there is a check to see if the user has write access on the Sitecore.Context.Item and if not to disable the control. Should be changed to the following:

output.Write("<input type="text" width="100%" class="scIgnoreModified" style="color:gray" value="Type here to search" id="filterBox" + this.ClientID + "" style="width:100%" " + (current.Access.CanWrite() ? "" : "disabled") +">");

from:

output.Write("<input type="text" width="100%" class="scIgnoreModified" style="color:gray" value="Type here to search" id="filterBox" + this.ClientID + "" style="width:100%" " + (Sitecore.Context.Item.Access.CanWrite() ? "" : "disabled") + ">");

To replicate this error with the current code. Navigate to an item that has implemented the ItemBucket field, then navigate to the workbox and then back to the content editor through the navigation links at the bottom of the content editor. The form will load and show the null reference exception error on all ItemBucket fields.

QueryWarmUp hook cannot be created due to protected constructor.

Step to reproduce:

  1. Install Sitecore CMS 6.5.0 rev. 121009.
  2. Install Sitecore Item Bucket 1.0.
  3. Look at Sitecore Log file.

Result:
There is the exception regarding Item Buckets Hook in Sitecore Log file. Please look at the Exception section.

ERROR Error loading hook: hook type="Sitecore.ItemBucket.Kernel.Kernel.Hooks.QueryWarmUp, Sitecore.ItemBucket.Kernel"

Expected result:
There should not be any exception related to Item Buckets Hook.

Note:
The reason of this issue because there is not public constructor in the Sitecore.ItemBucket.Kernel.Kernel.Hooks.QueryWarmUp class.

Exception:
ERROR Error loading hook:
Exception: Sitecore.Exceptions.ConfigurationException
Message: Could not create instance of type: Sitecore.ItemBucket.Kernel.Kernel.Hooks.QueryWarmUp. No matching constructor was found.
Source: Sitecore.Kernel
at Sitecore.Configuration.Factory.CreateFromTypeName(XmlNode configNode, String[] parameters, Boolean assert)
at Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper)
at Sitecore.Events.Hooks.HookManager.LoadHook(XmlNode node)
at Sitecore.Events.Hooks.HookManager.LoadAll()

Non-English bucketable item is not inserted into a bucket.

Scenario to reproduce:

  1. Create the "/sitecore/content/Home/Bucket" folder and bucket it;
  2. Add some non-English language to Sitecore, for example DK;
  3. Insert a bucketable item, for example Sample Item, into the "/sitecore/content/Home/Bucket" folder using DK language.

Result:
The "Sample Item" is not inserted into the buckets structure.

It is created just after the "/sitecore/content/Home/Bucket" folder.
For example: /sitecore/content/Home/Bucket/Sample Item

Expected result:
The "Sample Item" of DK language should be inserted into buckets structure.
For example: /sitecore/content/Home/Bucket/2013/07/23/11/21/Sample Item

Trouble running Item Buckets under AppPoolId

Did someone else already try to run a website using bucketsearches under de ApplicationPoolIdentity?

Our websites don't seem to run when the Application pool is running with the AppPoolId selected, when we select the NetworkService account the website runs without any problems. So I figured this would be a user rights issue and I Googled like a crazy horse on that.

I only found some answers about setting rights (Full Control to IUSR and the AppPool Account) to the Sitecore data and index folders, did so... but that didn't solve the problem and I'm not getting error messages which I can use to resolve the problem. The only thing I can see in the Sitecore logs is that a part of the site has been loaded (we've implemented a lot of logging to the Sitecore logs in to our user controls) and that loading stopped before a user control using bucket search is loaded.

The behaviour of the browser: loading your site... loading your site... loading your site... etc. (until I close the browser ;-) )

Ideas... anyone...?

Item-References in Sitecore lost after Installation of Sitecore-Item-Buckets

Hey folks,

after the installation of Sitecore-Item-Buckets( All 3 Packages + Updates ),
the references functionality of Items is lost.

Even the standard API isn't working correctly:
Sitecore.Globals.LinkDatabase.GetReferrers always returns 0 referrers.

Sitecore.Configuration.Factory.GetLinkDatabase() is returning the

{Sitecore.ItemBucket.Kernel.Kernel.Data.ScalableLinkDatabase} instead of the normal one.

Do i need to rebuild some indexes or smt.?

thanks in advance,
dreikant.

Multiple indexes don't work

Using Sitecore 6.6 and Item Buckets I want to use two different indexes:

  • an index on a bucket folder containing the items from the master database; and
  • an index on the same bucket folder containing the items from the web database.

Reason:

When I do a BucketManager.Search([...]) to get data to show on a website, I only want to search through already Published items.

Therefore I already described this index in my ItemBuckets config file, which looks like this:

<index id="itembuckets_web" type="Sitecore.Search.Index, Sitecore.Kernel">
    <param desc="name">$(id)</param>
    <param desc="folder">itembuckets_web</param>
    <Analyzer ref="search/analyzer" />
    <locations hint="list:AddCrawler">
        <ItemBucketSearch type="Sitecore.ItemBucket.Kernel.Crawlers.CustomCrawler,Sitecore.ItemBucket.Kernel">
            <Database>web</Database>
            <Root>/sitecore/content</Root>
            <IndexAllFields>true</IndexAllFields>

As you can se this index with id "itembuckets_web" is pointing tot database "web".
To perform the search action I added the following parameter to the BucketManager.Search([...]) method: indexName: "itembuckets_web". Here I expect that the BucketManager sets the indexName but what it really does is the following:

It creates an IndexSearcher: using (var searcher = new IndexSearcher(indexName)){[...]}. In my case the indexName will be "itembuckets_web". But when I look a little deeper into the source code and have a really close look at the IndexSearcher constructor I may conclude that it doesn't matter which indexname you pass to the BucketManager.Search([...]) method, because this is the constructor of the IndexSearcher:

public IndexSearcher(string indexId)
{
    Index = SearchManager.GetIndex(BucketManager.GetContextIndex(Sitecore.Context.Item));
}

indexId will be the indexName "itembuckets_web" but it's never used to set the Index.

Can somebody tell me if I'm right at my conclusion and if there is a fix for this?

PS. If I have a look at the Bucket Usage Statistics I can see that the master has 92 items and the web index has 85 items, which is correct. So I know the index description should be correct.

[DatabaseCrawler] System.FormatException exception during rebuilding indexes.

Item Buckets might throws the following exception in Sitecore Log file during rebuilding the indexes:

ERROR Failed to Get Field Value
Exception: System.FormatException
Message: String was not recognized as a valid DateTime.
Source: mscorlib
at System.DateTime.ParseExact(String s, String format, IFormatProvider provider, DateTimeStyles style)
at Sitecore.ItemBucket.Kernel.Kernel.Crawlers.CustomField.GetFieldValue(Item item, String formatting) in p:\SitecoreItemBuckets\src\ItemBucket.Kernel\Kernel\Crawlers\CustomField.cs:line 145

The reason why this happens is because some items have an empty “__Created” field and Sitecore.ItemBucket.Kernel.Kernel.Crawlers.CustomField class do not expect this when try getting “__Created” field value and convert it.

To fix this issue you can get a source code of Item Buckets shared source module from GitHub repository and improve the Sitecore.ItemBucket.Kernel.Kernel.Crawlers.CustomField.GetFieldValue(Item item, string formatting) method in the Sitecore.ItemBucket.Kernel project:

For example, you can modify it like below:

. . .
if (!string.IsNullOrEmpty(this.FieldName))
{
// Original code line.
// return XmlConvert.ToDateTime(item[this.FieldName].Split(':')[0], "yyyyMMddTHHmmss").ToString(formatting);


// Improved code lines.
if (string.IsNullOrEmpty(item[this.FieldName]))
{
return DateTime.Now.ToString(formatting);
}


return XmlConvert.ToDateTime(item[this.FieldName].Split(new char[] { ':' })[0], "yyyyMMddTHHmmss").ToString(formatting);
}
. . .

I hope that this is going to help somebody.

[Field Type] The Search field throws JS error in the Bucket Link field type

Step to reproduce:

  1. Add the Bucket Link field type to the “/sitecore/templates/Sample/Sample Item” template definition;
  2. In Content Editor, select the Home item and click the “Bucket Link” button. Internal Link dialog box appeared;
  3. In the Internal Link dialog, in the search field start typing some text.

Result:
The JavaScript error appears. Please take a look at the details in the JS Error section.

Expected result:
There should not be any JavaScript errors.

JavaScript Error:
Line: 16
Char: 39978
Error: Exception thrown and not caught
Code: 0
URL: http://SitecoreCMS/sitecore%20modules/Shell/Sitecore/ItemBuckets/Scripts/jquery.min.js

Cannot be installed according to the ItemBuckets Developer Guide document

Step to reproduce:

  1. Install Sitecore Item Bucket according to the “Sitecore ItemBuckets as a Sitecore Package” section of the “ItemBuckets Developer Guide.docx” document
    https://github.com/jerrong/Sitecore-Item-
    Buckets/blob/master/ItemBuckets%20Developer%20Guide.docx

• Install Sitecore CMS 6.5.0 rev.121009 (Update-6);
• Install the “Item+Buckets+Kernel-1.0.zip” installation package;
• Navigate to Sitecore Client.

Result:
The exception appears on Sitecore Login page. Please take a look at the attached “Exception.html” file.

Expected result:
There should not any exception after installing the above packages.

Note:
The reason of this issue because Sitecore.ItemBucket.Kernel.dll assembly has a references to the Sitecore.BigDate.dll assembly, which is distributed with “Item+Buckets+Big+Data-1.0.zip” installation package.

Exception:

Could not resolve type name: Sitecore.ItemBucket.Kernel.Crawlers.CustomCrawler,Sitecore.ItemBucket.Kernel (method: Sitecore.Configuration.Factory.CreateType(XmlNode configNode, String[] parameters, Boolean assert)).
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Exception: Could not resolve type name: Sitecore.ItemBucket.Kernel.Crawlers.CustomCrawler,Sitecore.ItemBucket.Kernel (method: Sitecore.Configuration.Factory.CreateType(XmlNode configNode, String[] parameters, Boolean assert)).

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[Exception: Could not resolve type name: Sitecore.ItemBucket.Kernel.Crawlers.CustomCrawler,Sitecore.ItemBucket.Kernel (method: Sitecore.Configuration.Factory.CreateType(XmlNode configNode, String[] parameters, Boolean assert)).]
Sitecore.Diagnostics.Error.Raise(String error, String method) +129
Sitecore.Configuration.Factory.CreateType(XmlNode configNode, String[] parameters, Boolean assert) +421
Sitecore.Configuration.Factory.CreateFromTypeName(XmlNode configNode, String[] parameters, Boolean assert) +67
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +141
Sitecore.Configuration.Factory.GetInnerObject(XmlNode paramNode, String[] parameters, Boolean assert) +930
Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +577
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +296
Sitecore.Configuration.Factory.GetInnerObject(XmlNode paramNode, String[] parameters, Boolean assert) +930
Sitecore.Configuration.Factory.AssignProperties(XmlNode configNode, String[] parameters, Object obj, Boolean assert, Boolean deferred, IFactoryHelper helper) +577
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +296
Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert) +420
Sitecore.Search.SearchManager.GetIndex(String id) +128
Sitecore.Shell.Applications.ShellForm.OnLoad(EventArgs e) +1390

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0
System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +76
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +193
System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +35
Sitecore.Web.UI.Sheer.ClientPage.OnLoad(EventArgs e) +337
System.Web.UI.Control.LoadRecursive() +71
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3178

Multiple words search

Please check the #385998 ticket for details.

Short description: Add method to BucketManager, which allows to perform a query with multiple words, which requires each word to be in at least one field. For example, when searching for "Kolding åbningstider what", the query should be the following (I have removed all but the relevant part of the query):

{+(+(pageheading:åbningstider pageteaser:åbningstider pagetext:åbningstider) +(pageheading:kolding pageteaser:kolding pagetext:kolding) +(pageheading:what pageteaser:what pagetext:what))}

Could not load file or assembly SolrNet

I am attempting to install the provided packages on a clean install on version 6.4.1 (rev. 110324). I successfully installed the big data and kernel packages, but I get the following error when I attempt to install the UI package:

The installation failed for the following reason:
Could not load file or assembly 'SolrNet, Version=0.4.0.2002, Culture=neutral, PublicKeyToken=bc21753e8aa334cb' or one of its dependencies. The system cannot find the file specified.

I have not attempted to install the update packages yet, I assume they should not be installed until the main packages are installed. Am I wrong on that? Has anyone run into this issue or know how to solve it?

Thanks in advance.

After reload BucketList displays Name instead of DisplayName

After reload BucketList displays Name instead of DisplayName. The problem seems to come from the Search service.

In Website/sitecore modules/Shell/Sitecore/ItemBuckets/Services/Search.ashx.cs:105
sitecoreItem.Name = innerItem.Name;

should be:

sitecoreItem.Name = innerItem.DisplayName;

Fork with fix applied: akamburov@181a561

[DatabaseCrawler] System.InvalidOperationException exception during navigating on content tree

Item Buckets might throws the following exception in Sitecore Log file during navigating on content tree:

ERROR Could not update index entry. Action: 'RemovedVersion', Item: '{E3E8C81D-1718-49CA-90B2-63382A0655F8}' Exception: System.InvalidOperationException Message: Version is not passed to RemoveVersion handler Source: Sitecore.Kernel at Sitecore.Diagnostics.Assert.IsNotNull(Object value, String message) at Sitecore.ItemBucket.Kernel.Kernel.RemoteCrawlers.RemoteDatabaseCrawler.Provider_OnRemoveVersion(Object sender, EventArgs e) in p:\SitecoreItemBuckets\src\ItemBucket.Kernel\Kernel\RemoteCrawlers\RemoteDatabaseCrawler.cs:line 539 at System.EventHandler.Invoke(Object sender, EventArgs e) at Sitecore.Data.Managers.IndexingProvider.RemoveVersion(HistoryEntry entry, Database database) at Sitecore.Data.Managers.IndexingProvider.UpdateIndex(HistoryEntry entry, Database database)

The reason why this happens is because incorrect implicit type conversion is used in the Sitecore.ItemBucket.Kernel.Kernel.RemoteCrawlers. RemoteDatabaseCrawler.Provider_OnRemoveVersion(object sender, EventArgs e) method of the Sitecore.ItemBucket.Kernel project.
Instead of the “Sitecore.Data.Version” type, it uses “System.Version” one

To fix this issue you need to use “Sitecore.Data.Version” type:

. . .
Sitecore.Data.Version version = SitecoreEventArgs.GetObject(e, 3) as Sitecore.Data.Version;
Assert.IsNotNull(version, "Version is not passed to RemoveVersion handler");
using (IndexDeleteContext context = this._index.CreateDeleteContext())
{
this.DeleteVersion(iD, language.ToString(), version.ToString(), context);
context.Commit();
}
. . .

System.InvalidOperationException exception during selecting content items

Item Buckets might throws the following exception during rebuilding the indexes:

ERROR Could not update index entry. Action: 'RemovedVersion', Item: '{E3E8C81D-1718-49CA-90B2-63382A0655F8}'
Exception: System.InvalidOperationException
Message: Version is not passed to RemoveVersion handler
Source: Sitecore.Kernel
at Sitecore.Diagnostics.Assert.IsNotNull(Object value, String message)
at Sitecore.ItemBucket.Kernel.Kernel.RemoteCrawlers.RemoteDatabaseCrawler.Provider_OnRemoveVersion(Object sender, EventArgs e) in p:\SitecoreItemBuckets\src\ItemBucket.Kernel\Kernel\RemoteCrawlers\RemoteDatabaseCrawler.cs:line 539
at System.EventHandler.Invoke(Object sender, EventArgs e)
at Sitecore.Data.Managers.IndexingProvider.RemoveVersion(HistoryEntry entry, Database database)
at Sitecore.Data.Managers.IndexingProvider.UpdateIndex(HistoryEntry entry, Database database)

The reason why this happens is because incorrect implicit type conversion is used in the Sitecore.ItemBucket.Kernel.Kernel.RemoteCrawlers. RemoteDatabaseCrawler.Provider_OnRemoveVersion(object sender, EventArgs e) method of the Sitecore.ItemBucket.Kernel project. Instead of the “Sitecore.Data.Version” type, it is use “System.Version” one.

To fix this issue you need to use “Sitecore.Data.Version” type:

. . .
Sitecore.Data.Version version = SitecoreEventArgs.GetObject(e, 3) as Sitecore.Data.Version;
Assert.IsNotNull(version, "Version is not passed to RemoveVersion handler");
using (IndexDeleteContext context = this._index.CreateDeleteContext())
{
this.DeleteVersion(iD, language.ToString(), version.ToString(), context);
context.Commit();
}
. . .

Sitecore 6.6: Lucene.net version 2.9.4.1

Trying to install Item Buckets in Sitecore 6.6 with the packages for that version.
But it seems that the binaries in the package is compiled with the lucene version from Sitecore 6.5.

Is there an updated version of Item Buckets, or could the source for Sitecore 6.6 be uploaded in a branch ?

Sitecore.ItemBucket.UI & Sitecore 6.6

There is reference to Lucene in Sitecore.ItemBucket.UI package for Sitecore 6.6: Lucene.Net, Version=2.3.1.3, Culture=neutral, PublicKeyToken=null

But, Sitecore 6.6 is using Lucene.Net, Version=2.9.4.1, Culture=neutral, PublicKeyToken=85089178b9ac3181. There are correct references in Sitecore.ItemBucket.Kernel and Sitecore.BigData and Sitecore.ItemBucket.BigData assemblies.

Is Sitecore.ItemBucket.UI is compatible with Sitecore 6.6?
If we change reference in Sitecore.ItemBucket.UI using ildasm, will it work with Sitecore 6.6 version?

Exclude Templates Filter in Bucket List

There is a TemplateFilter which can be placed in the datasource of the bucketlist field type to show items that belong to the template type included in the filter.

Similarly is there a way to exclude items that belong to a template?

Because I have to setup the bucket list so that it includes all items in my content tree except a particular template type.

Let me know.
Thanks,
Snehit

NewsLinkProvider possible issue

Check #384480 for details and fix. Short description:

The result of the Sitecore.ItemBucket.Kernel.Common.Providers.NewsLinkProvider.GetItemUrl is http://sitename/bag/buckets/news-bucket/news-201303141120
instead of http://sitename/bag/sitenameag/buckets/news-bucket/news-201303141120
The problem seems to be related to the NewsLikProvider.GetItemUrl (DatedLinkProvider.GetItemUrl)

The problem seems to be related to the Sitecore.ItemBucket.Kernel.Common.Providers.NewsLinkProvider.DatedLinkProvider -> GetItemUrl -> line 64
If I comment the code bellow or add appendedSection += "/" + sec.Name before the continue clause the links are generated correctly:
else if (sec.Paths.FullPath.ToLowerInvariant() == Sitecore.Context.Site.StartPath.ToLowerInvariant())
{
continue;
}

Inserting of a bucketable item into a bucket switches content language

Scenario to reproduce:

  1. Create the "/sitecore/content/Home/Bucket" folder and bucket it;
  2. Add some non-English language to Sitecore, for example DK;
  3. Apply fix from issue #32;
  4. Insert a bucketable item, for example Sample Item, into the "/sitecore/content/Home/Bucket" folder using DK language.

Result:
The "Sample Item" is inserted into the buckets structure using EN language instead of DK one.

Expected result:
The "Sample Item" must be inserted in the bucket structure using DK language.

Note:
This issue is fixed in Sitecore CMS 7.0 (reference number: 383753).

[Field Type] FilterBox input is disable in the Bucketlist for non-admin user.

Step to reproduce:

  1. Add the Bucketlist field to the “/sitecore/templates/Sample/Sample Item” template definition;
  2. Create a non-admin “sitecore\Test” user with all Sitecore\Sitecore Client XXX assigned roles;
  3. Allow the “Read”, “Write”, “Rename”, “Create”, “Delete” and “Administer” access right for the “/sitecore/content/Home” item and its descendants.
  4. Log in to Sitecore Client using “sitecore\Test” user;
  5. In Content Editor, select the Home item and try to put some text into “Type here to search” FilterBox input.

Result:
The FilterBox input is disabled. A non-admin user cannot use it.

Expected result:
A non-admin user should be able to use the FilterBox input. Or at list it should be relate to some access right for the item.

Note:
The reason of this issue is due to the following code call in the Sitecore.ItemBucket.Kernel.FieldTypes.BucketList.DoRender(HtmlTextWriter output) method:
output.Write("<input type="text" width="100%" class="scIgnoreModified" style="color:gray" value="Type here to search" id="filterBox" + this.ClientID + "" style="width:100%" " + (Context.Item.Access.CanWrite() ? "" : "disabled") + ">");

When the Sitecore.Context.Item.Access.CanWrite() method is called the Sitecore.Context.Item points to the "/sitecore/content/Applications/Content Editor" item in the Core database.

The "Accessing IndexSearchContext after Commit() called" error might be thrown under heavy load

The "Accessing IndexSearchContext after Commit() called" error might be thrown under heavy load with following stack trace:

ERROR Exception while getting Product for Part Number[TGA2501-GSG]
Exception: System.InvalidOperationException
Message: Accessing IndexSearchContext after Commit() called
Source: Sitecore.Kernel
at Sitecore.Search.IndexSearchContext.Search(PreparedQuery query)
at Sitecore.ItemBucket.Kernel.Util.IndexSearcher.RunQuery(Query query, Int32 pageSize, Int32 pageNumber, String sortField, String sortDirection)
at Sitecore.ItemBucket.Kernel.Util.IndexSearcher.RunQuery(Query query, Int32 pageSize, Int32 pageNumber)
at Sitecore.ItemBucket.Kernel.Util.IndexSearcher.GetItems(DateRangeSearchParam param)
at Sitecore.ItemBucket.Kernel.ItemExtensions.Axes.ItemExtensions.Search(Item itm, Int32& hitCount, String relatedIds, String indexName, String text, String templates, String location, String sortDirection, String language, String id, String sortField, String itemName, String startDate, String endDate, Int32 numberOfItemsToReturn, Int32 pageNumber)
at TriQuint.Web.Services.SitecoreServices.ProductDetailService.GetProductItem(String partNumber)

The reason of the error is in the Dispose() method of the Sitecore.ItemBucket.Kernel.Util.IndexSearcher class.

This method set static IndexSearcher.Index property to null, when another code try accessing it in not static method of the IndexSearcher class.

public virtual void Dispose()
{
Index = null;
}

To fix it you can remove/comment out this line in the Dispose() method.

Custom Facets

Hello,

When I want to create a new facet (with a new facet type), it doesn't work. In the roadmap I read the following:

• Custom Facet Controls e.g. Sliders, Colour Pickers, Calendars

Only the controls are mentioned, but will it also be possible to "easily" create complete new custom facets with different facet types? If so, what will be the timeframe to implement this specific issue?

Kind regards,

Bas

Method not found:' System.Collections.Generic.IEnumerable`1<Sitecore.Search.Index> Sitecore.Search.SearchManager.get_Indexes()'.

This occurs when I try to save any item.

Method not found: 'System.Collections.Generic.IEnumerable`1<Sitecore.Search.Index> Sitecore.Search.SearchManager.get_Indexes()'.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.MissingMethodException: Method not found: 'System.Collections.Generic.IEnumerable`1<Sitecore.Search.Index> Sitecore.Search.SearchManager.get_Indexes()'.

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[MissingMethodException: Method not found: 'System.Collections.Generic.IEnumerable1<Sitecore.Search.Index> Sitecore.Search.SearchManager.get_Indexes()'.] Sitecore.ItemBucket.Kernel.Managers.BucketManager.GetContextIndex(Item item) in C:\inetpub\wwwroot\newbucket\src\ItemBucket.Kernel\Kernel\Managers\BucketManager.cs:152 Sitecore.ItemBucket.Kernel.Util.IndexSearcher..ctor(String indexId) in C:\inetpub\wwwroot\newbucket\src\ItemBucket.Kernel\Kernel\Util\Searcher.cs:36 Sitecore.ItemBucket.Kernel.ItemExtensions.Axes.ItemExtensions.Search(Item itm, SafeDictionary1 refinements, Int32& hitCount, String relatedIds, String indexName, String text, String templates, String location, String language, String id, String sortField, String itemName, String startDate, Int32 pageNumber, String endDate, String sortDirection, Int32 numberOfItemsToReturn, Object[] parameters) in C:\inetpub\wwwroot\newbucket\src\ItemBucket.Kernel\Kernel\ItemExtensions\Axes\ItemExtensions.cs:280
Sitecore.ItemBucket.Kernel.Kernel.Data.ScalableLinkDatabase.GetReferrers(Item item, Boolean deep, Int32 page) in C:\inetpub\wwwroot\newbucket\src\ItemBucket.Kernel\Kernel\Data\ScalableLinkDatabase.cs:83
Sitecore.ItemBucket.Kernel.Kernel.Data.ScalableLinkDatabase.GetReferrers(Item item) in C:\inetpub\wwwroot\newbucket\src\ItemBucket.Kernel\Kernel\Data\ScalableLinkDatabase.cs:57
Sitecore.Data.Managers.NotificationManager.GetAllClones(Item source) +104
Sitecore.Data.Managers.NotificationManager.DataEngine_SavedItem(Object sender, ExecutedEventArgs1 e) +357 System.EventHandler1.Invoke(Object sender, TEventArgs e) +0
Sitecore.Data.Engines.EngineCommand`2.Execute() +267
Sitecore.Data.Engines.DataEngine.SaveItem(Item item) +234
Sitecore.Data.Managers.ItemProvider.SaveItem(Item item) +291
Sitecore.Data.Items.ItemEditing.AcceptChanges(Boolean updateStatistics, Boolean silent) +229
Sitecore.Data.Items.ItemEditing.EndEdit(Boolean updateStatistics, Boolean silent) +16
Sitecore.Pipelines.Save.Save.Process(SaveArgs args) +799

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner) +0
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) +639
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +38
System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +35
Sitecore.Nexus.Pipelines.NexusPipelineApi.Resume(PipelineArgs args, Pipeline pipeline) +379
Sitecore.Web.UI.Sheer.ClientPage.RunPipelines() +271
Sitecore.Web.UI.Sheer.ClientPage.OnPreRender(EventArgs e) +584
Sitecore.Shell.Applications.ContentManager.ContentEditorPage.OnPreRender(EventArgs e) +25
System.Web.UI.Control.PreRenderRecursiveInternal() +113
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4201

The Sitecore.ItemBuckets.Scaling.config is enabled by default.

The Sitecore.ItemBuckets.Scaling.config file is enabled by default even though InMemoryIndex and RemoteIndex are not used.

If disable the Sitecore.ItemBuckets.Scaling.config file by renaming it to Sitecore.ItemBuckets.Scaling.config.disabled, Item Buckets API will try to access the search/inmemoryconfiguration and search/remoteconfiguration elements in *.config file.

Loosing Items

Hej,

since the installation we run into the problem that a certain item tree is frequently removed.
The tree is configured as the main website and we couldn't find a reason why this takes place.

Did someone already run into a similiar problem?
Or does someone has an idead where we could look?

Thanks in advance
Best Regards
halbherz

Problems with ItemBucket

I managed to install the ItemBucket-Module into the new JetStream-Demo.
Still there is the Problem in the Documentation with the order in which the Modules should be installed.
If u did it like me and installed the Kernel-Module first, simple solution is to rename the ItemBuckets-Configs and then install the BigData-Module then name the configs back.
So far so nice, installed the update-packages, system still running.

Now I can finally create a Bucket, but the moment I try to put a new bucketable Item into the new Bucket I get that weird ItemNameValidation error:

Sitecore ItemBucket An item name must satisfy the pattern: ^[\w*$][\w\s-$]*((\d{1,})){0,1}$ (controlled by the setting ItemNameValidation)

Named the Item "Test" and still get the error. So I'm quite into RegEx and know that "Test" is a quite valid name for that expression ;-)

So I changed the config Expression to "^.*$" to see whats the validation problem.

Finally got the answer from another error that says that the bucket-item-container that is created cannot be hidden because it is not bucketable.

item-bucket-fail-1

So from that error I got to the RegEx error in the first place:

Folder "2013.01.14.18.23" is not allowed by the RegEx.

So its not only one error but actually two:
The "ItemNameValidation"-Error and the "ItemBucket-Folder is not bucketable"-Error.

Can someone plz tell me that I'm stupid or point me in the right direction XD
Cause I was in Amsterdam and saw the possibilities of this nice little feature and think its great stuff ad don't want to implement similar things again bymyself, btw. don't have the time ;-)

Greetz Mat

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.