Versions Compared

Key

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

...

Expand
titleXperienCentral R28

XperienCentral R28

Release date: May 13, 2020


Upgrading to XperienCentral R28 Minimum Version Required


Note

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

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.

Code Changes

The nestedPath attribute has been removed from fragmentValue.tag in the wmpformelement plugin. It is 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 a custom index solution to support queries on frontend nodes instead of the Apache Jackrabbit JCR. This custom solution generally improves performance and drastically cuts down 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 JRC 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:


Code Block
titleWith 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:

 

Code Block
titleWithout JCR index
NodeIterator nodes = getQueryManager().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 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 can be entered to define which user account executes job: 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 instead of text fields. In R28 a new System user option has been introduced in the Authorization panel. Only users designated as system users will be available in the "User" drop-down lists in Import/Export Configuration.

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 go to the Authorization panel, designate new system users and then select them from the drop-down lists on the Configuration and Job tabs in Import/Export Configuration.






...