Known issues in Content Manager
The following list describes issues known to exist in Content Manager.
- Notification broadcasting is not supported out of the box for the Content Manager SQL Azure database
-
Although Azure databases are supported as of SDL Web 8.5, you need to apply some additional backplane hub configuration if you want to use broadcast notification. Specifically, you need to specify your Azure service bus and service bus endpoint in the server-side Content Manager configuration file, Tridion.ContentManager.config located in the %TRIDION_HOME%\config\ folder.
To find out your service bus endpoint, visit your Azure Portal and select the type Messaging under Service Bus to see the endpoint.
After opening this file for editing, find the section calledsignalrBackplaneHub, which looks like this:<signalrBackplaneHub messageBusType="Microsoft.AspNet.SignalR.SqlServer.SqlMessageBus" scaleoutConfigurationType="Microsoft.AspNet.SignalR.SqlScaleoutConfiguration" assembly="Microsoft.AspNet.SignalR.SqlServer, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>You should replace it with the following:<signalrBackplaneHub messageBusType="Microsoft.AspNet.SignalR.ServiceBus.ServiceBusMessageBus" scaleoutConfigurationType="Microsoft.AspNet.SignalR.ServiceBusScaleoutConfiguration" assembly="Microsoft.AspNet.SignalR.ServiceBus, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"> <backplaneConnectionParameters> <add parameter="Endpoint=ENDPOINT" /> <add parameter="topicPrefix" /> </backplaneConnectionParameters> </signalrBackplaneHub>where ENDPOINT is the endpoint you found in the Azure Portal.
Save and close the file to apply your changes, then restart IIS.
- .NET method Uri.EscapeDataString(urlString) has changed behavior
-
Version 4.0 or older of the Microsoft .NET Framework is not supported. This may have an effect on how your URLs are parsed if they contain brackets:
- In .NET 4.0 and older, characters that are reserved in RFC 2396 are escaped. RFC 2396 allows brackets.
- In .NET 4.5 and newer, characters that are restricted in RFC 3986 are escaped. RFC 3986 restricts brackets.
This change is related to the enabling of IRIs (Internationalized Resource Identifiers). For more information, refer to this page on the MSDN Web site: https://msdn.microsoft.com/en-us/library/system.uri%28v=vs.110%29.aspx
To quickly see the difference in behavior, run the following code, targeting first .NET 4.0 and then .NET 4.5.2:string url= @"http://some.url/page (bracketed).html"; Console.WriteLine(url); Console.WriteLine(Uri.EscapeDataString(url));The complete list of characters that are restricted (that is, that will be encoded) as per RFC 3986 are:: / ? # [ ] @ ! $ & ' ( ) * + , ; = -
Use of
RecursiveinOrganizationalItemItemsFiltercauses other filter parameters to be ignored -
An
OrganizationalItemItemsFilterlets you combine multiple filter parameters. One filter parameter isRecursive, which causes the filter to recurse into child organizational items. However, settingRecursivetotruehas the unintended side effect of rendering almost all other filter parameters ineffective, as if they were not set. Specifically, ifRecursiveis set totrue,ItemTypesis the only other filter parameter that gets processed; the filter ignoresBasedOnSchemas,SchemaPurposes,ComponentTypes,TemplateTypeIds,LockFilterandNotBasedOnSchema.For example, consider the following code sample:OrganizationalItemItemsFilter filter = new OrganizationalItemItemsFilter(Session) { SchemaPurposes = new[] { SchemaPurpose.Component }, ItemTypes = new[] { ItemType.Schema }, Recursive = true }; var componentSchemas = Publication.RootFolder.GetListItems(filter);The call to
GetListItemsshould apply all parameters and return only Schemas with a Component Purpose in the given Publication's root folder and subfolders. However, because of this issue,GetListItemsinstead only applies theRecursiveandItemTypesparameters, not theSchemaPurposesparameter, and returns all Schemas, regardless of Purpose, in the Publication's folder tree.This issue affects TOM.NET and the Core Service alike.