Wednesday, March 18, 2015

Subscription notification email checkbox not present in Sitecore 8 WFFM Save Action

With Web Forms for Marketers 8.0 (WFFM) module, "Subscribe to recipient list" save action was replaced with new save action, "Add Contact To Contact List"

In "Subscribe to recipient list" save action in older WFFM module, there was a "send confirmation email" checkbox. When this checkbox was clicked, sitecore will send a subscription confirmation email to the user.

But, in the latest WFFM 8.0, "Add Contact To Contact List" save action does not have that checkbox option.

WFFM Older Versions - Subscribe to Recipient List save action
WFFM 8.0 - Add Contact to Contact List save action


So, the way to achieve this in Sitecore 8.0 is to use Send Email Campaign Message action with the "Add the Contact to Contact List" save action. (Sitecore Support has helped/confirm this after reporting the issue)



Hope this helps to someone!

Monday, March 16, 2015

Look into Sitecore Development Basics – March Meetup – Event Report - SUGSL

After looking into functional side of Sitecore CMS in our first few meetups, it was time to look into the Sitecore development.
Since most of the members/participants in Sri Lanka are fairly new to Sitecore, our SUGSL March meetup was a timely one.
This time, we extend our meetup to two session. sitecoreug.org
6:30 PM – 7:15 PM  – Sitecore Development Basics by Chaturanga Ranatunga (Senior Sitecore Developer, Codehouse)
7:30 PM – 9:00 PM  – Sitecore Development: Getting Started by Matthew Kenny (Sitecore Architect | Sitecore Technology MVP, Codehouse)
Following are the recordings of the event

The participants were thankful to SUGSL since the presentation done by Matthew Kenny covered most of the required things to be considered in the initial development stages.

Event was powered by Codehouse Ltd, a Sitecore Certified Partner.
Hope to see you all in our April Meetup!

Sunday, March 8, 2015

Why NOT to Upgrade to Sitecore 8.0 Update-1

Recently we tried to upgrade from sitecore 7.0 to Sitecore 8.0 Update-1. With this upgrade we started to face lot of issues (most of them are showstoppers) that we could not go live with.

Note : Sitecore 8.0 Update-2 has fixed most of those issues and look more stable

So, here are my reasons to NOT to go for Sitecore 8.0 Update-1

1. Item Layout Details not editable

When try to edit the layout details (Presentation -> Details), the content editor get stuck. Also, following error was thrown at the logs.



More frustrating was Hedgehog TDS synchronization failed to sync layout details, which caused lot of trouble for our developers.
The only was we were able to do layout changes was using Sitecore Rocks VS plugin.

Solution: Not reproducible in Update-2

2. Cannot add additional fields to WFFM Create User save action User Profile

C
annot add additional fields to "User Profile" to "Create User" save action in WFFM
When click "Add Field" button, it won't add new fields (or not responding)

Solution: Fixed in Update-2 WFFM module

3. Path Analyzer Loading Error

When we try to run Path Analyzer tool, it returns following error in a pop-up.

Error: "There was an error loading data, please try again. PathExplorer.PathMapDataLoaded() - PathMap is null."

Solution:
Important! Please note that sometimes this table is cleared by Sitecore during the rebuild of the reporting database through the sitecore/admin/RebuildReportingDB.aspx page (this behavior was registered as a bug and has been fixed in Sitecore CMS 8.0 Update-2), so you should fill this table with the data from the clean reporting database after performing the rebuild of reporting database mentioned in step 1. Quote : Sitecore Support 

As for sitecore support, one of the reason for this error is Segments table and TreeDefinition tables are empty. The reason for this table get empty is when running the RebuildReportingDb.aspx tool, it clears this table also.
Thanks for Sitecore support to finding the issue and this has been fixed in update-2

4. EXM error while changing common domain field value


Solution: Workaround provided by Sitecore (Ref:431963)

5. Cannot open EXM from Applications menu in Sitecore Desktop

When try to open EXM (Email Campaign Manager) from Sitecore Desktop Applications link, it returns an error.

Sitecore Desktop -> Start -> All Applications -> E-mail Campaign -> E-mail Campaign Manager

Solution: Workaround provided by Sitecore (Ref:432783)


So, if you are planing to go for Sitecore 8, then my recommendation is to go for Sitecore 8.0 Update-2

Wednesday, March 4, 2015

WFFM 8.0 rev. 150224 update package installation Issue

Recently, I tried to upgrade sitecore 8.0 update-1 to Sitecore 8.0 update-2 with WFFM module update from WFFM 8.0 rev 141217 to WFFM 8.0 rev 150224

while in the wffm upgrade progress, at the final step, upgrade process breaks with following error.


Server Error in '/' Application.
--------------------------------------------------------------------------------
 Could not resolve type name: Sitecore.WFFM.Services.Pipelines.Initialize.RegisterHttpControllerActivator, Sitecore.WFFM.Services (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.WFFM.Services.Pipelines.Initialize.RegisterHttpControllerActivator, Sitecore.WFFM.Services (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.WFFM.Services.Pipelines.Initialize.RegisterHttpControllerActivator, Sitecore.WFFM.Services (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) +432
   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.Pipelines.CorePipelineFactory.GetObjectFromType(String type, XmlNode processorNode) +144
   Sitecore.Pipelines.CoreProcessor.GetMethod(Object[] parameters) +124
   Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) +351
   Sitecore.Nexus.Web.HttpModule.Application_Start() +175
   Sitecore.Nexus.Web.HttpModule.Init(HttpApplication app) +516
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +530
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +304
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +404
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +475

[HttpException (0x80004005): Could not resolve type name: Sitecore.WFFM.Services.Pipelines.Initialize.RegisterHttpControllerActivator, Sitecore.WFFM.Services (method: Sitecore.Configuration.Factory.CreateType(XmlNode configNode, String[] parameters, Boolean assert)).]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +12979668
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +159
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest  ...

So, I take a look into Sitecore.WFFM.Service.dll by decoding it and found that a config entry in the /App_Config/includes/sitecore.WFFM.services.config file was pointing to non-existing namespace.

Then, I checked the standalone installation of WFFM 8.0 rev. 150224 package /App_Config/Includes config files and copy those files into my instance.
Then, ran the WFFM module upgrade again.
Everthing worked fine.

After informing the finding, sitecore has reported this as a bug and they will provide a fix for this in future.

Hope this helps to someong !

Saturday, February 28, 2015

Capabilities of Sitecore - February Meetup - Sitecore User Group Sri Lanka - Event Report

Our February Meetup was held on Wednesday, 11th February 2015.
This time, our topic was "Capabilities of Sitecore".

This time, our presenter was Mr. Matthew Tilbury. He is one of the directors at Codehouse Ltd and has a long standing relationship with Sitecore. He is also an expert on how to use Sitecore to enhance the customer experience in web sites as well as marketing.

Matthew did a great demonstration using own Codehouse website.

Some of the topics that he did includes,


  • Quick look into using Content Editor & Page Editor
  • How to use Personalization to improve visitor experience
  • Engagement Plans, Goals, Engagement Values, etc
  • Quick look into ECM


Our schedule was as follows

6:00 PM - 7:15 PM  - Capabilities of Sitecore by Matthew Tilbury & Q&A Session
7:15 PM - 8:00 PM  - Networking



This event turns out to be a great one with most of the participants are requesting more event in the future meetups.

Sitecore development in Sri Lanka is growing rapidly with three companies schedule to start Sitecore development in coming months. As SUGSL, we are very happy to contribute to Sri Lanka Sitecore community.

Hope to see you all in our next Meetup!

Friday, February 20, 2015

Common Domain field value change error - Sitecore EXM 3.0 Bug


When try to change "Common Domain" field value on /sitecore/content/home/email campaign item, it returns following error


Sitecore Version : 8.0 rev.150121
Email Experience Manager 3.0.0 rev. 150126

I tried this on a fresh installtion (with fresh sitecore and EXM) and it returned the same error.

So, Ticket is created to sitecore support (431963) and it was reported as a bug. They provide the following workaround

1. Open the \Website\sitecore modules\Shell\EmailCampaign\UI\Dialogs\SelectDomain.xaml.xml file;
2. Add the EnableViewState="false" attribute to the <EmailCampaign.SelectDomain> node:
<EmailCampaign.SelectDomain x:inherits="Sitecore.Modules.EmailCampaign.UI.Dialogs.SelectDomainPage,Sitecore.EmailCampaign" EnableViewState="false">
3. Restart IIS.

and Workaround fixed the issue.

Hope this will help someone!

Wednesday, February 18, 2015

Publishing and Link DB Rebuild error after upgrading to Sitecore 8.0

Recently, we run an upgrade test for our environment to sitecore 8.0 update-1.
After the upgrade, when we try to publish items in /home node, it returns following error
(When try to rebuild the link database for master, we are getting an error.)

13384 13:48:46 ERROR Exception
Exception: System.Reflection.TargetInvocationException
Message: Exception has been thrown by the target of an invocation.
Source: mscorlib
   at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
   at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters)
   at (Object , Object[] )
   at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
   at Sitecore.Jobs.Job.ThreadEntry(Object state)

Nested Exception

Exception: System.FormatException
Message: Unrecognized Guid format.
Source: mscorlib
   at System.Guid.GuidResult.SetFailure(ParseFailureKind failure, String failureMessageID, Object failureMessageFormatArgument, String failureArgumentName, Exception innerException)
   at System.Guid.TryParseGuid(String g, GuidStyles flags, GuidResult& result)
   at System.Guid..ctor(String g)
   at Sitecore.Analytics.Data.TrackingField.<>c__DisplayClass21.<get_Events>b__20(XElement e)
  ......



TEMP SOLUTION :
We try to find the items that return an error when published, and deleted them and recreated them. Then, everything start to work again including publishing and linkDB rebuild.

SOLUTION :
Sitecore support get back to us and gave the reason for these issue.
Following are a summary of there reason and solution.

In Sitecore 6.5 Update-4 there was a change exactly related to the format how Tracking field stores data. See ref. 358378 in Release Notes (http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/ReleaseNotes/ChangeLog/Release%20History%20SC65.aspx).

Please review "Tracking" field of these items - it contained incorrect definition of page events. You can simply clear tracking field content for these items and reassign page event if needed.

Execute something like following query on Master database

select * from SharedFields where FieldId = '{B0A67B2A-8B07-4E0B-8809-69F751709806}' and Value not like '%{________-____-____-____-____________}%' and Value like 'event'

Such query returned values to verify - where 'id' attribute was missed.