Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleXperienCentral R28

XperienCentral R28

Release date: May 13, 2020


Note

Minimum Version Required for Upgrading to XperienCentral R28

Upgrading to XperienCentral R28 requires a minimum version of R26. If you are upgrading from XperienCentral R25 or lower, you must first upgrade to R26 and then upgrade to XperienCentral R28.

Performance Dashboard is Removed

The Performance Dashboard has been removed from XperienCentral in R28. Use the Monitoring Dashboard to view statistics and metrics related to your XperienCentral deployment. See also Administrative Pages.

While the upgrade scripts for XperienCentral should in principle remove all components related to the Performance Dashboard, in some circumstances it may not, therefore you need to manually remove any remnants. Follow these steps:

  1. Navigate to Configuration > Plugins.
  2. Locate "GX WebManager - Performance Dashboard" in the list and select it.
  3. Click [Uninstall].
  4. Click [Yes] when you are prompted to remove all data related to this plugin (purge).
  5. Repeat the steps above for the "GX WebManager - SystemHealthIndicator tracker" plugin.

See also XperienCentral Plugins Management Console.

Code Changes

The nestedPath attribute has been removed from fragmentValue.tag in the wmpformelement plugin. It has been replaced by the attribute formFragment. The value of this attribute contains an object with a nestedPath property. Wherever you use the <forms:fragmentValue> tag, you have to replace the nestedPath property. For example:

{{ <forms:fragmentValue nestedPath="${formFragment.nestedPath}" />}}

must be changed to:

<forms:fragmentValue formFragment="${formFragment}" />

JCR Index

Beginning in R28, XperienCentral uses an XperienCentral-optimized indexing solution to support queries on frontend nodes instead of the Apache Jackrabbit JCR. This solution generally improves performance and drastically reduces the amount of time it takes to bring a new frontend node online in cloud deployments when traffic demands increase. The new indexing solution will always be used in XperienCentral even if the old JCR index is not disabled. The old JCR index should be disabled on production environments if possible.

See also the new JCR Index Settings that have been added to the Setup Tool.

JCR Query Replacement

If you use custom JCR queries in your deployment, they should be replaced in order to use the new API. The following shows a typical query replacement:

Queries similar to this:



With the JCR index

String xPathQuery = "//element(*, wo:personalization_category)[@wo:items = '" + getUUID() + "']";
final QueryManager queryManager = wmSession.getJcrSession().getWorkspace().getQueryManager();
final Query elementsQuery = queryManager.createQuery(xPathQuery, Query.XPATH);
NodeIterator nodes = elementsQuery.execute().getNodes();

 

should be changed to something like this:

 
Without the JCR index

NodeIterator nodes = "getJcrIndexQueryManager().getNodes(wmSession.getJcrSession(), "wo:personalization_category", Collections.singletonMap("wo:items", getUUID()));

 

Disabling the Built-in Apache Jackrabbit JCR Index

To disable the old Apache Jackrabbit JCR index, follow these steps:

  1. Remove both occurrences of: <SearchIndex>...</SearchIndex> in <wm-root>/work/jcr/repository.xml.
  2. Remove the directory <wm-root>/work/jcr/repository.


Content API User Credentials

In the Connector API, there are two locations in Configuration > Import/Export Configuration where user credentials define which user account executes import/export jobs: one on the Configuration tab and one on the Job tab. The Job tab previously contained the fields "Username", "Password" and "Use application key". The Cofiguration tab contained the same fields with an additional "Website" field. These fields have been replaced by a single "User" drop-down list. In R28 a new System user option has been introduced in the User Authorization panel. Only user accounts designated as system users can be authorized to execute automated export/import jobs.

Re-add Users as System Users

After upgrading to R28, the existing username(s) will still be used by the Connector API. As soon as you open either of the panels, however, the user(s) might not be selectable anymore and if you re-save the configuration, the jobs might stop running. This is the intended behavior. The solution is to navigate to the Authorization panel, designate new system users and then designate them as the user accounts that run jobs on the Configuration and Job tabs in Import/Export Configuration.






...

Expand
titleXperienCentral R27

XperienCentral R27

Release date: March 26, 2020

Language Version Support for Media Items

Since Beginning in XperienCentral 10.27.0, each version of a media item has a specific language . Each defined for it. During the upgrade R27 or higher, each media item is assigned the " default editing language " of the home page during an upgrade to this version or higher. A consequence of the language support this is that media items might not be shown any more if its language differs from that of the page where on which it should be shown. This is also the case for (lead) images stored in the media repository. This is sometimes undesirable but can in many cases be solved by setting a fallback language. If for example the fallback languge for Dutch is set to English and there is no Dutch media item to be shown on a Dutch page, the English version will be shown. This is the case for all kinds of media items, for example images as well as articles

  • The "default editing language" of the home page: Properties panel of the home page > General > Other > Language
  • Enable/disable fallback languages: Channel Configuration > General > Options > "Use another language if language is not available"
  • The fallback language to be used can be set in the Language Labels panel.

Modify your Solr Configuration

In this version of XperienCentral, the Lucene version has been upgraded to version 6.6.6, therefore you must make the following changes to solrconfig.xml:

Change the declaration

<luceneMatchVersion>5.4.1</luceneMatchVersion>

to

<luceneMatchVersion>6.6.61</luceneMatchVersion>

and add the following declaration to the <config></config> section:

<schemaFactory class="ManagedIndexSchemaFactory">
   <bool name="mutable">false</bool>
</schemaFactory>


Deprecated Method

The following method has been deprecated in the XperienCentral API in this release:

  • MediaRepositoryManagementService.createMediaItemVersion (MediaItem,MediaItemVersion) — Use createMediaItemVersion(MediaItemVersion) instead.

Removed Methods/Interfaces

The following methods and interfaces have been removed from the XperienCentral API in this release:

  • MediaRepository.createContent — Use MediaRepositoryManagementService.createMediaItem(Website, String) instead.
  • MediaItemDownloadVersion.getPersonalization() — Use getPersonalizationItem() instead.
  • PageVersion.getPersonalization() — Use getPersonalizationItem() instead.
  • Element.getPersonalization() — Use getPersonalizationItem() instead.
  • Element.setPersonalization() — Use setPersonalizationItem() instead.
  • MediaItemDownloadVersion.setPersonalization() — Use setPersonalizationItem() instead.
  • Website.getPersonalizations() — Use getPersonalizationItems() instead.
  • Utilities.checkPersonalizations() — Use checkPersonalizationItems() instead.
  • DirectoryElement
  • FileNode
  • PollElement

  • PollItem

  • WhoIsWhoElement

Update your Presentation JSPs

You need to update your presentation JSPs if they use the following methods:

  • PageVersion.getPersonalization()
  • Element.getPersonalization()
  • MediaItemDownloadVersion.getPersonalization()

Perform a global search in your presentation JSPs for the string ".personalization" to ensure that you catch all instances.



...