Experience Sitecore ! | All posts tagged 'New-version'

Experience Sitecore !

More than 200 articles about the best DXP by Martin Miles

Fixing issues preventing one having solution with SXA 1.8 along with Sitecore XP 9.0 update 2

I was very anticipating to upgrade my solution to recently released XP 9.1 with SXA 1.8 and all its great features, however, I got a dependency on Sitecore Commerce, which hasn't (yet) updated to 9.1. Got nothing to do with that, but just wait for a month or so until XC 9.1 is out...

But wait, why not just update at least SXA to version 1.8 meanwhile? SXA 1.8 comes for both versions for 9.1 and 9.0 which means - in two runtimes .NET 4.7.1 and .NET 4.6.2 correspondingly. Done, upgraded. SXA 1.8 works well on top of clean Sitecore 9.0 update 2 instance for me.

But when it came to updating NuGet packages in my solution, I was unable to do so because NuGet packages for my version for some reason demand .NET 4.7.1:


And that is my error:

Package Sitecore.XA.Feature.CreativeExchange 3.8.0 is not compatible with net462 (.NETFramework,Version=v4.6.2) / win-x86. Package Sitecore.XA.Feature.CreativeExchange 3.8.0 supports: net471 (.NETFramework,Version=v4.7.1)


Version 3.8.0 is the correct version of SXA 1.8 for 9.0 and it should support .NET 4.6.2, not 4.7.2. Version of SXA 1.8 for 9.1 has number 4.8.0 and that one indeed supports 4.7.1 runtime.

Since I cannot do anything about NuGet feeds, I turned back to the old lib\LocalRepository folder in my solution, simply copying all the required SXA 1.8 libraries from instance webroot (where I have SXA 1.8 working with clean 9.0 update instance) and referencing them instead from affected projects. 


That did me a job for the moment. I will either update to the NuGets once it is fixed with the correct version or upgrade the entire solution to 9.1 when XC 9.1 is out, whatever comes earlier.

StackOverflow: Sitecore 8.1 bug - Launchpad brings HTTP 500 errors and several icons including FXM are missing

Question: today I have came across a question on StackOverflow regarding new 8.1 installation, I couldn't pass by:

I am installing Sitecore 8.1 with SIM and get several JavaScript errors coming from ajax request returning HTTP 500 errors when open my launchpad. Looking in the developers tools shows the message:

http://sitecore81/sitecore/api/ao/aggregates/all/786FBA3A4573445EA74504E3CA5E48C1/all?&dateGrouping=by-week&&dateFrom=26-07-2015&dateTo=26-10-2015&keyGrouping=collapsed

http://sitecore81/sitecore/api/ao/aggregates/all/7A9A483F195D4F96AD88473CD6854C4F/all?&dateGrouping=by-week&&keyTop=5&keyOrderBy=visits-Asc&dateFrom=26-07-2015&dateTo=26-10-2015&keyGrouping=by-key

"An error occurred when trying to create a controller of type 'AnalyticsDataController'. Make sure that the controller has a parameterless public constructor."
"at System.Web.Http.Dispatcher.DefaultHttpControllerActivator.Create(HttpRequestMessage request, HttpControllerDescriptor controllerDescriptor, Type controllerType) at System.Web.Http.Controllers.HttpControllerDescriptor.CreateController(HttpRequestMessage request) at System.Web.Http.Dispatcher.HttpControllerDispatcher.<SendAsync>d__1.MoveNext()"


That results to several icons missing from Launchpad, for example FXM.

That is exact point of my confusion I've experienced previous week, when Sitecore 8.1 was released. The explanation is below:

Previously in Sitecore 8.0, there was a very confusing situation, when many new features introduced in 8.0 required license for 8.0. Running those features with a license from one of previous Sitecore version did not block those features in UI from working, but still disabled them from inside of CMS. That lead to some confusing situations like I have described in one of my previous blog posts (see: blog post about FXM and question on StackOverflow) when user without appropriate license ran FXM and couldn't add parent placeholder - no relevant error message was said.

Now since 8.1, Sitecore decided to perform very reasonable structural changes to separate CMS from xDB and Analytics with licensing model. They introduces a new CMS-only mode when Sitecore can run without xDB and Mongo, just CMS features. Those who require to use xDB and Analytics in 8.1 now need to request explicit license allowing those features (using this URL). Otherwise their Sitecore instance will default to CMS-only mode. Sitecore download page contains a warning message regarding those changes:

Sitecore 8.1 now requires a license with the “Sitecore.xDB” key to enable all features of the Experience Platform. If your license file does not contain this key, Sitecore will default to Experience Management (CMS-only) mode. Any customers or partners with a license to Experience Platform should contact their account manager or login to SPN if they are missing this key.
But what about javasript errors? Well, that is definitely a bug. I have previously contacted Sitecore support in order to report a bug (issue Id 451464). Even if you explicitly enable CMS-only mode in Sitecore.xDB.config - you'll still get those AJAX errors. It looks that corresponding SPEAK controls try to call to Entity Services (web API) and it returns generic 500-error (internal server error) code, instead of something more specific like 403 (forbidden) and proper handling that code in JavaScript on client side.

Hope Sitecore fixes that shortly!

Update: I have received confirmation that having a license for xDB in 8.1 this issue does not occur.

Sitecore 8.1: what does new CMS-only mode mean?

That is the most wanted features that prevented my current organization from upgrade to Sitecore 8.0.

Having pretty complex infrastructure, big codebase, number of legacy code, wide range of third-party external services and data providers altogether with lack of human resources, it was not easy task to perform such a massive migration (from 6.6) at one time. The decision was taken to migrate part by part, starting with CMS itself without analytics, leaving xDB to second phase of upgrade.

But it happened that in 8.0 Sitecore had wired dependency on MongoDb and you had to have it regardless whether you plan to use analytics or not, even for content authoring environments. As we are limited in resources, we chose Sitecore xDB Cloud as the solution for our analytics, but it turned out that xDB Cloud was yet in beta, and business took a (conservative, as usual) decision to wait until it goes out of beta.

We consulted with Sitecore - they advised us about that issue would be sorted out in 8.1 - and that is exactly what happened. So, welcome CMS-only mode!

First of all, what is that?

As per documentation, CMS-only mode separates CMS functionality from analytics and drops CMS dependencies from xDB for those who don't need them. That also related to licensing changes in 8.1 - now there should be an explicit license for xDB functions (re-)issued for 8.1 and later, otherwise (and if you got license from any of previous versions) Sitecore will run in CMS-only mode by default.

There is a boolean configuration switch in Sitecore.Xdb.config file to enable / disable CMS-only mode:

<setting name="Xdb.Enabled" value="true" />

To draw a line between CMS and xDB, Sitecore revised all existing functions and introduces 3 modes of compatibility: Fully compatible, partly compatible and incompatible. As per documentation distribution looks like below:

Fully compatible:

  • Content editing in the Experience Editor
  • Device detection
  • IP Geo-location detection
  • Experience Explorer

Partly compatible

  • Campaign Creator – runs without analytics functionality
  • Commerce Connect – currently incompatible, but will run with limited functionality in future releases
  • Personalization – in-session personalization works, while personalization based on historical data is unavailable
  • Web Forms For Marketers – will provide a SQL solution in the future

Incompatible:

  • Content testing
  • Email Experience Manager
  • Experience Analytics
  • Experience Profile
  • List Manager
  • Path Analyzer
  • Segmentation

To my mind, introduction of CMS-mode is big step ahead; also such a separations of functions is logically cleaner than it was before in 8.0. For example previously you could run Sitecore 8.0 with old license and could even see and run, let's say Federated Experience Manager, but unless you had an explicit license for 8.0 you wouldn't be able to see any parent for placeholder. That was confusing and led to misunderstanding in past, but has more sense.

Hope you are going to get use of CMS-only mode and understanding how it works!

Sitecore 8.1 has been released!

As we have been waiting for it, Sitecore 8.1 is now released. That is a feature version, and it has such a massive what's-new and improvements list, that it may take you just 20 minutes to read it through!

Everything can be downloaded from official SDN website, as usual. If you are using Sitecore Instance Manager, please update it to latest version to support latest build (and rename it according to SIM naming convention -Sitecore 8.1 rev. 151003.zip. If not - it is now a good time to consider that handy software (read my article about it).

Also Sitecore xDB Cloud should get out of beta along with 8.1 release - there is now xDB Cloud Usage Policy available there.


So, briefly, what are new / fixed features?

  • SPEAK updated to 2.0 - now there's less SPEAK plumbing to go with it, more time to concentrate on business logic (link)
  • Sitecore 8 may now function as normal with xDB disabled - this is called CMS-only mode (link)
  • MVC Areas now work out-of-the-box (link)
  • Experience Editor improvements (both functional and performance)
  • Multiple xDB and Analytics improvements, new Path Analyzer
  • Contact Behavior Profile - enabled "dynamic" personalization based on previous contact activity (sort of artificial intellect)
  • Language Fallback now works out-of-the-box
  • xDB now fully support Mongo 3.0
  • Analytics got more missing UI
  • Sitecore subscription-based services
  • Device Detection (as subscription-based service) now identifies device types out of box bases on hundreds of params
  • Geo IP now is a subscription-based service
  • Sitecore now logs client-side javascript errors along with its own backend exceptions
  • CMS-only mode (link)
  • Shared / versioned layouts improvements
  • All associated modules updated as well (WFFM, ECM, etc.)

Breaking licensing change: Sitecore 8.1 now requires a license with the “Sitecore.xDB” key to enable all features of the Experience Platform. If your license file does not contain this key, Sitecore will default to Experience Management (CMS-only) mode. Any customers or partners with a license to Experience Platform should contact their account manager or login to SPN if they are missing this key.

Read more by official Release Notes link

Sitecore 8.0 Update 5 is released

Sitecore 8.0 Update 5 is released

Now with Mongo 3!

  • Support has been added for MongoDB 3.0.
  • The MongoDB driver has been upgraded to 1.10.
  • Generic security enhancements have been made.

It works fine with previous SIM (Sitecore Instance Manager) release revision 150618 as soon as you place webroot archive Sitecore 8.0 rev. 150812.zip into repository folder. To retrieve your repository folder with SIM navigate Settings -> Local Repository.