I'm having this issue related with Tracker.
[InvalidOperationException: Tracker.Current is not initialized]
Sitecore.Analytics.Pipelines.StartAnalytics.StartTracking.Process(PipelineArgs args) +304
(Object , Object[] ) +74
Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) +484
Sitecore.Analytics.Pipelines.StartAnalytics.StartAnalyticsPipeline.Run() +293
Sitecore.Mvc.Analytics.Pipelines.MvcEvents.RequestBegin.StartTracking.Process(RequestBeginArgs args) +139
(Object , Object[] ) +74
Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) +484
Sitecore.Mvc.Pipelines.PipelineService.RunPipeline(String pipelineName, TArgs args) +184
Sitecore.Mvc.Routing.RouteHttpHandler.BeginProcessRequest(HttpContext context, AsyncCallback cb, Object extraData) +74
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +923
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +157
In the web.config I've the
enableTracking="true"
If I set to false it works but there's no Tracking
There are multiple factors that can contribute to the issue you are experiencing.
To simplify and summarize comments given previously, you need to be sure that:
MongoDB is running
Your Connection Strings properly set
Sitecore License has xDB added
Xdb.Enabled and Xdb.Tracking.Enabled are both set to "true"
Analytics.ClusterName in Sitecore.Analytics.Tracking.config is a proper hostname
Verify you have VisitorIdentification tag added (to weed out robots)
The first thing we need to check is to make sure Mongo DB is installed and Mongo DB service is started.This fixed the issue on my machine.
Most recently, I had my Mongo DB running in a Docker Container and Docker wasn't running and so, Mongo DB wasn't running either... when the container was started, the issue was resolved.... Just a variation of the fact that a running MongoDB solves the issue!
Related
I am on v8.2
I see the following error in the log file:
ERROR Could not run the 'getMediaStream' pipeline for '/sitecore/media library/test image'.
Original media data will be used.
Exception: System.ArgumentException
Message: Empty strings are not allowed.
Parameter name: filePathOrExtension
Source: Sitecore.Kernel
at Sitecore.Diagnostics.Assert.ArgumentNotNullOrEmpty(String argument, String argumentName)
at Sitecore.Resources.Media.MediaThumbnailGenerator.GetThumbnailFileName(MediaData mediaData, TransformationOptions options)
at Sitecore.Resources.Media.MediaThumbnailGenerator.GetStream(MediaData mediaData, TransformationOptions options)
at Sitecore.Resources.Media.MediaData.GetThumbnailStream(TransformationOptions options)
at Sitecore.Resources.Media.ThumbnailProcessor.Process(GetMediaStreamPipelineArgs args)
at (Object , Object[] )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
at Sitecore.Resources.Media.Media.GetStreamFromPipeline(MediaOptions options, Boolean& canBeCached)
I guess it is because of this error, the media items I attach to the branch template don't really work when I create an item in the Media Library using that branch template.
It could be related to rainbow.config, I am not sure.
Does anyone have an idea?
I went through stack trace you've provided.
Exception happens within
Sitecore.Resources.Media.MediaThumbnailGenerator.GetThumbnailFileName(MediaData mediaData, TransformationOptions options)
The only place where can be thrown System.ArgumentException with message 'Empty strings are not allowed.' and Parameter name: filePathOrExtension is ctor of GetFileIconPipelineArgs:
'cause:
I can assume that mediaData.Extension contains empty string.
Getter of Extension property says that it uses 'Extension' field of media item.
So I suggest to check what is value of 'Extension' field of '/sitecore/media library/test image' media item. I'm sure you'll find that it's empty.
I have the same error and realized that the error does not appear when an English item of the same version is present. My assumption is that the pipeline looks for a wrong version, meaning that English or the default language is used.
Here are all of my observations (haven't had time to investigate further):
Issue appears only for versioned media items
Issue appears only for non-English or non-default language (TBD)
Issue appears when an item is selected for which no English- or Default-language version of the same value exists (e.g. when you request the item in German version 2 and there is only a version 1 in English)
Issue persists in Sitecore 8.2 update 5
From my observations I assume that the getMediaStream pipeline overrides the requested language which leads to an empty value in the Extension and/or File Name.
The Sitecore client seems to send the wrong language to the server when trying to render the preview element. When I look at the German version of an item the request looks like this:
<SERVER URL>/sitecore/shell/Applications/-/media/<Item ID>.ashx?bc=white&db=master&h=128&la=en&mw=640&thn=1&vs=1&ts=e73e6b27-b0db-45d7-a3c9-29830ad0191a&udi=1
Note that the requested language is English. When I change the parameter to de, the request works.
Can anyone confirm this behaviour? It looks like a Sitecore bug to me.
I got the same log error as well, but happened on attaching a new file (pdf) after detaching the older file. It was impossible to upload the new file, it simply wouldn't upload (got a nice asp.net error in the i-frame, with the same error as above).
I ended up deleting the media item completely and recreate it with the newer file attached, as a workaround.
Maybe a glitch, maybe a user issue... but not reproduced it yet. I'll get back on this, if I find a fix, or a how to reproduce at least.
My regression testing is on going to an upgraded Sitecore instance of 8.0-U3 to 8.1-U2. And one piece of the testing is to check if the workflow is properly working as expected.
So I created a new sample item named PAGE ABC (template: /sitecore/templates/Sample/Sample Item) under the /sitecore/content/home node.
The workflow of the PAGE ABC is 'Sample workflow' (template: /sitecore/system/Workflows/Sample Workflow) which was provided on a freshly installed Sitecore instance.
The PAGE ABC was created without any issue, but when I submitted the PAGE ABC, I encountered an ArgumentException shown below:
Server Error in '/' Application.
________________________________________
Empty strings are not allowed.
Parameter name: handleId
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.ArgumentException: Empty strings are not allowed.
Parameter name: handleId
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:
[ArgumentException: Empty strings are not allowed.
Parameter name: handleId]
Sitecore.Diagnostics.Assert.ArgumentNotNullOrEmpty(String argument, String argumentName) +204
Sitecore.Workflows.WorkflowUIHelper.ExtractFieldsFromFieldEditor(String handleId) +48
Sitecore.Shell.Framework.Commands.Workflow.Run(ClientPipelineArgs args) +900
[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) +128
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +146
Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj) +89
Sitecore.Nexus.Pipelines.NexusPipelineApi.Resume(PipelineArgs args, Pipeline pipeline) +313
Sitecore.Web.UI.Sheer.ClientPage.ResumePipeline() +224
Sitecore.Web.UI.Sheer.ClientPage.OnPreRender(EventArgs e) +825
Sitecore.Shell.Applications.ContentManager.ContentEditorPage.OnPreRender(EventArgs e) +24
System.Web.UI.Control.PreRenderRecursiveInternal() +197
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +7763
________________________________________
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1073.0
Note: In this case, all the required fields are populated. I also tried leaving one (1) required field empty but same problem persist.
I searched for the keyword 'handleId' parameter on the entire website and I found this section on my \temp folder _UpgradeHistory which I suspected has something to do with the above issue inside the Sitecore.Kernel.xml
<member name="M:Sitecore.Workflows.WorkflowUIHelper.ExtractFieldsFromFieldEditor(System.String)">
<summary>
Extract the field values set by the field editor
</summary>
<param name="handleId">The Id of the handle holding the return values from the field editor</param>
<returns>A NameValueCollection containg the fields</returns>
</member>
I also tried searching over the internet, but I didn't find any relative solution to my problem.
Edited: I created a freshly instance of Sitecore v.8.1-U2. Replace the master db in the ConnectionString.config of the upgrade instance and the workflow submit action works, then I attached back the upgraded master database and I encountered again the issue.
Edited: I actually also noticed that there's a difference in the dialog box of the workflow. It is small compared to the working instance, which is a bigger dialog box. See supporting screenshots below:
Figure 1 : Not working workflow
Figure 2 : Working workflow
I will post a more detailed investigation when I got new information. Appreciate any help. Thanks.
I found the fix and the root cause.
First, I recreated the issue by creating a new workflow 'WORKFLOW ABC' under /sitecore/system/Workflows, I added the necessary actions, such as Draft and Published, and then create a new template and assign the 'WORKFLOW ABC'. I also created an actual item and tried to change the workflow of the item from Submit to Published. The error appeared once again. (successful replication of the issue)
Then I did the same process to a freshly installed instance and I wasn't able to replicate the issue.
Root cause:
So I compared both values and there's a discrepancy, the Default Comment Template field was empty (why it took me so long to figured this out) but is existing to the freshly installed 8.1-U2 instance.
Resolution:
I changed the value of the Default Comment Template field from empty to \Templates\System\Workflow\Standard Comment Template and test again and it works.
Screenshot for easy visualization:
You may also want to update the Default Comment Dialog Height field value to 250, but this one is optional.
EDITED
Since when changing the master database, the workflow works. Then the issue comes with the items. Can you check if the template of the workflow is the same as compared with the working instance.
Path is /sitecore/templates/System/Workflow
Has anyone ran into the issue below? Basically, I am trying to upgrade the Web forms for Marketers from 8.0-U3 to 8.0-U4(successful) to 8.1-Initial release (not successful).
The error was during the update installation process:
http://upgrade/sitecore/admin/UpdateInstallationWizard.aspx
It says:
The installation has encountered a critical error.
This Sitecore installation cannot be used for either testing or
production purposes until Sitecore support is contacted. Make sure to
download and include the file containing diagnostic information about
your Sitecore installation.
Server Error in '/' Application.
Could not create instance of type: Sitecore.Form.Core.WffmActionHandler. No matching constructor was found.
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: Sitecore.Exceptions.ConfigurationException: Could not create instance of type: Sitecore.Form.Core.WffmActionHandler. No matching constructor was found.
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:
[ConfigurationException: Could not create instance of type: Sitecore.Form.Core.WffmActionHandler. No matching constructor was found.]
Sitecore.Configuration.Factory.CreateFromTypeName(XmlNode configNode, String[] parameters, Boolean assert) +272
Sitecore.Configuration.Factory.CreateObject(XmlNode configNode, String[] parameters, Boolean assert, IFactoryHelper helper) +131
Sitecore.Events.EventSubscribers.Add(String eventName, XmlNode configNode) +545
Sitecore.Events.Event.GetConfigSubscribers() +564
Sitecore.Events.Event.RaiseEvent(String eventName, Object[] parameters) +338
Sitecore.Data.DataProviders.Sql.SqlDataProvider.SetProperty(String parameterName, String value, CallContext context) +259
Sitecore.Data.DataProviders.DataProvider.SetProperty(String name, String value, CallContext context, DataProviderCollection providers) +124
Sitecore.Data.DataManager.SetProperty(String name, String value) +103
Sitecore.Web.Authentication.TicketManager.IsTicketExpired(Ticket ticket, Boolean useProlongation) +330
Sitecore.Web.Authentication.TicketManager.GetTicket(String ticketId, Boolean returnExpired) +93
Sitecore.Web.Authentication.TicketManager.IsTicketValid(String ticketId) +37
Sitecore.Shell.Web.ShellPage.IsLoggedIn(Boolean returnAfterLogin) +409
Sitecore.Shell.Web.UI.SecurePage.OnLoad(EventArgs e) +22
System.Web.UI.Control.LoadRecursive() +68
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4498
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.6.1073.0
I was able to fixed the issue. I reinstalled the update package of WFFM 8.1. But prior to that, I copy and pasted the DLLs and configuration files of WFFM 8.1-Initial release to my instance before undergoing under run of update.
Edited: Root cause, forgot to update the Sitecore.Forms.config with the patch below:
<handler type="Sitecore.Form.Core.WffmActionHandler, Sitecore.Forms.Core" method="OnWffmActionEventFired" >
<param name="actionManager" ref="/sitecore/wffm/wffmActionExecutor" /> </handler>
In my case i had fixed by copying entire DLL from clean-sitecore installation folder, When more dig on it who is black sheep is below they are
Sitecore.Forms.Core.dll
Sitecore.Forms.Custom.dll
Sitecore.Forms.Mvc.dll
Above dll's version differed.
We are seeing an issue in the Sitecore log files, the message says - "Cannot use Analytics with a database that has no definition items". We have not enabled Analytics in our Sitecore environment. Is anyone aware of this error ?
Here is the stack trace that I found from Sitecore log file
2764 2015:02:24 14:11:17 ERROR Application error.
Exception: System.InvalidOperationException
Message: Cannot use Analytics with a database that has no definition items
Source: Sitecore.Kernel
at Sitecore.Diagnostics.Assert.ResultNotNull[T](T result, String message)
at Sitecore.Analytics.Commons.LazyReference`1.GetValue(Object mutex, Func`1 initializer)
at Sitecore.Analytics.Data.Items.AnalyticsItems.<get_Profiles>b__7()
at Sitecore.Analytics.Commons.LazyReference`1.GetValue(Object mutex, Func`1 initializer)
at Sitecore.Analytics.Data.TrackingField.NormalizeProfiles(AnalyticsItems analytics)
at Sitecore.Analytics.Data.TrackingField.InitializeProfiles()
at Sitecore.Buckets.Pipelines.UI.DynamicFields.EngagementValue.IsLockedCheck(DynamicFieldsArgs args)
at Sitecore.Buckets.Pipelines.UI.DynamicFields.EngagementValue.Process(DynamicFieldsArgs args)
at (Object , Object[] )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Buckets.Pipelines.UI.DynamicFields.DynamicFieldsPipeline.Run(DynamicFieldsArgs args)
at Sitecore.Buckets.Pipelines.UI.FillItem.SetItemProperties.GetValue(Item innerItem, SitecoreUISearchResultItem sitecoreItem)
at Sitecore.Buckets.Pipelines.UI.FillItem.SetItemProperties.GetQuickActions(FillItemArgs args)
at (Object , Object[] )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Buckets.Pipelines.UI.FillItem.FillItemPipeline.Run(FillItemArgs args)
at ItemBuckets.Services.Search.<ProcessRequestAsync>d__d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Web.TaskAsyncHelper.EndTask(IAsyncResult ar)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
Let me know if additional information is needed.
The stack trace shows the following method is being called:
Sitecore.Buckets.Pipelines.UI.DynamicFields.EngagementValue.IsLockedCheck
In that method, a TrackingField object is instantiated which in turn calls it's own method InitializeProfiles (This also appears in the stack trace).
The thing is, that TrackingField object is only created if the value of the static Settings.Analytics.Enabled property is true, and there are 2 elements required for this:
The Analytics.Enabledsetting in the Sitecore.Analytics.config file must be set to true.
The Sitecore licence must include DMS.
Are you sure you don't have analytics enabled, because it seems Sitecore thinks you do.
After installing .NET 4.5, any users accessing the Workbox now receive an exception:
Object of type 'System.Int32' cannot be converted to type 'System.Web.Security.Cryptography.Purpose'.
After some basic google searching, it appears as if this issue used to happen on login, and was resolved in 6.5 for the login. I have no issues logging into Sitecore. So far I'm only seeing this issue in the workflow box.
Before .NET 4.5 was installed, we were running on .NET 4.0 without any issues.
Has anybody found a workaround to get the Workbox running with .NET 4.5 installed?
NOTE: I'm currently using Sitecore 6.5 Update 5
Full Stack Trace:
[ArgumentException: Object of type 'System.Int32' cannot be converted to type 'System.Web.Security.Cryptography.Purpose'.]
System.RuntimeType.TryChangeType(Object value, Binder binder, CultureInfo culture, Boolean needsSpecialCast) +185
System.Reflection.MethodBase.CheckArguments(Object[] parameters, Binder binder, BindingFlags invokeAttr, CultureInfo culture, Signature sig) +122
System.Reflection.RuntimeMethodInfo.InvokeArgumentsCheck(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +206
System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +126
Sitecore.SecurityModel.Cryptography.CookieProtectionHelperWrapper.Encode(CookieProtection cookieProtection, Byte[] buf, Int32 count) +175
Sitecore.Shell.Feeds.FeedUrlOptions.ToString() +192
Sitecore.Shell.Applications.Workbox.WorkboxForm.DisplayWorkflow(IWorkflow workflow) +496
Sitecore.Shell.Applications.Workbox.WorkboxForm.OnLoad(EventArgs e) +545
[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() +116
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2910
UPDATE:
We already have the web.config entry altered, which is why Login works correctly:
<setting name=”Login.RememberLastLoggedInUserName” value=”false” />
As a work around just change this setting in your web.config..
<setting name=”Login.RememberLastLoggedInUserName” value=”false” />
Thanks to both Mark and Stephen for their help, unfortunately neither options applied in this particular scenario. (Upvoted by me, however, as they may help somebody else running into this problem).
With some further digging, it appeared that what had happened in this scenario was that some of the Sitecore 6.5 Update 5 DLLs had not been deployed, and were instead on version 6.5 Update 4.
After redeploying the correct Update 5 DLLs (and keeping the web.config change we had previously) the site is now operating on .NET 4.5 and the workbox now loads without any exceptions being thrown.
This blog post seems to have a solution, which involves uninstalling .NET 4.5 and reinstalling 4.0
If you are running earlier versions than 6.5 update 5 you need to override the workbox methods:
DisplayStates
DisplayWorkflow
And set the feed options like so:
var feedUrlOptions = new FeedUrlOptions("/sitecore/shell/~/feed/workflowstate.aspx")
{
// HACK: This is to make workbox work on machines with .NET 4.5 installed
UseUrlAuthentication = false
};
I know this has been resolved but thought would still contribute as I came across this error and resolved in a different way.
Check out the following links:
http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2012/09/Object-of-type-System-Int32-cannot-be-converted-to-type-System-Web-Security-Cryptography-Purpose.aspx
Read the comment by Kevin Obee at the bottom of http://kamranicus.com/Blog/Posts/45/sitecore-and-net-framework-45
http://truncatedcodr.wordpress.com/2012/06/20/fix-sitecore-and-net-framework-4-5/
Reading this resolved my issue and Sitecore works fine.
As an aside to this, I encountered this issue but only upon launching the workbox. This link http://www.daveleigh.co.uk/sitecore-workbox-object-of-type-system-int32-cannot-be-converted-to-type-system-web-security-cryptography-purpose/ provided a sitecore provided fix which resolved my issue.