Miscellaneous Upgrade Steps
Visitor Cookie Name Change
In Bloomreach Experience Manager 15.0, the default visitor cookie name has been changed from "_visitor" to "visitor" for improved compatibility with Bloomreach Cloud and SPA frontends.
If your project does not use an SPA frontend, you may opt to keep using _visitor if you want your existing visitor profiles to keep working. To achieve that, configure on /targeting:targeting:
/targeting:targeting: targeting:visitorCookieName: _visitor
See Visitor, Visits, and Cookies for more information.
HST Enterprise Caching Removed
In Bloomreach Experience Manager 15.0, the HST Enterprise Caching addon has been removed and therefore, if this module is used in your project, it should be removed, too.
These are the steps to remove the module from the project:
- Remove the following dependency from the project (most probably site/pom.xml file)
<dependency> <groupId>com.onehippo.cms7</groupId> <artifactId>hippo-addon-caching-hst</artifactId> </dependency>
- Remove the following entries from the context.xml (typically /site/webapp/src/main/webapp/META-INF/context.xml)
<Environment name="stalePageCache"
<Environment name="secondLevelPageCache"
<Environment name="clusterCache"
- Remove the usage of these caches from the code of the project. The following snippet shows the kind of code you would be looking for:
HippoRedisCacheManager cacheManager = HstServices .getComponentManager() .getComponent(HippoRedisCacheManager.class.getName(), "com.onehippo.cms.spring.cache"); Cache cache = cacheManager.getCache("clusterCache");
- In your local Cargo-based development environment remove below JNDI <Environment /> variable that contains configuration properties for connecting to Redis (if present). Note that this <Environment /> variable would be found in the global conf/context.xml file, whereas the specific Second Level Page Cache, Stale Page Cache and Generic Cluster-Wide Cache context configuration above went into the site webapp context.xml:
<Environment name="redis/hippoJedisConnectionFactory"
- In case cache key prefixing was used in order to avoid accidental cache key collisions, it should be removed from the global container conf/context.xml:
<Environment name="env" type="java.lang.String" value="foo" /> <Environment name="stack" type="java.lang.String" value="bar"/>
- In case the redis instance was only used to support this feature, it can be removed.
Upgraded 3rd Party Libraries
Bloomreach Experience Manager 15.0 comes with a substantial list of upgraded 3rd party libraries. If your project code makes use of these libraries, it may need to be adjusted accordingly. For the following libraries, the upgrade jumps to a higher major version number, so according to the Semantic Versioning paradigm, these are the libraries where you're most likely to see a need to adjust your project code:
Library | Previous version (used by v14) | Upgraded version (used by v15) |
Guava (com.google.guava/guava) | 30.1-jre | 31.1-jre |
Groovy (org.codehaus.groovy/groovy, groovy-xml and groovy-json) | 2.5.14 | 3.0.9 |
Wicket (many artifacts) | 7.18.0 | 9.7.0 |
There is a dedicated page on upgrading Wicket project code and configuration. A complete list of upgraded libraries and artefacts can be found in the v15 release notes.