KB-1288 Errors related to cache config after upgrade

Symptoms

After starting JBoss for the first time following an upgrade, one of the following errors may be printed in the console and the application server log:

ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 89) JBWEB000284: Exception starting filter theme-resources: java.lang.ClassNotFoundException: com.appiancorp.suite.ThemeResourceFilter from [Module "deployment.suite.ear.web.war:main" from Service Module Loader]

OR

INFO  [org.jboss.web] (ServerService Thread Pool -- 76) JBAS018210: Register web context: /suite
INFO  [stdout] (ServerService Thread Pool -- 76) 2016-11-08 21:44:57,426 [ServerService Thread Pool -- 76] FATAL com.appiancorp.common.web.StartupHaltingServletContextListener - Halting JVM startup: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'springCacheManager' defined in class com.appiancorp.cache.spring.CacheSpringConfig: Unsatisfied dependency expressed through constructor argument with index 0 of type [com.appiancorp.cache.CacheManager]: : Error creating bean with name 'cacheManager' defined in com.appiancorp.common.spring.BootstrapSpringConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.appiancorp.cache.CacheManager]: Factory method 'cacheManager' threw exception; nested exception is java.io.FileNotFoundException: class path resource [WEB-INF/conf/cache/cache-config.xml] cannot be opened because it does not exist; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cacheManager' defined in com.appiancorp.common.spring.BootstrapSpringConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.appiancorp.cache.CacheManager]: Factory method 'cacheManager' threw exception; nested exception is java.io.FileNotFoundException: class path resource [WEB-INF/conf/cache/cache-config.xml] cannot be opened because it does not exist

OR

Error creating bean with name 'cacheManager' defined in com.appiancorp.common.spring.BootstrapSpringConfig
...
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.appiancorp.cache.CacheManager]: 
Factory method 'cacheManager' threw exception; 
nested exception is java.io.FileNotFoundException: class path resource [WEB-INF/conf/cache/cache-config.xml] cannot be opened because it does not exist
...
Caused by: java.io.FileNotFoundException: class path resource [WEB-INF/conf/cache/cache-config.xml] cannot be opened because it does not exist

Cause

During the upgrade, the web.xml file from <APPIAN_HOME>/ear/suite.ear/web.war/WEB-INF/ has been copied over from the previous installation. This can be confirmed by comparing the file to the one from a base unmodified Appian installation.

Changes are made to the web.xml file with each new version of Appian, so copying over the web.xml file in its entirety can cause errors like the ones above and is incorrect practice for upgrading Appian.

Action

  1. Stop the application server.
  2. Replace the current web.xml located in <APPIAN_HOME>/ear/suite.ear/web.war/WEB_INF with the web.xml from an out-of-the-box Appian installation.
  3. Merge any customizations in the web.xml file from the older version of Appian with the web.xml file from the newer version of Appian per the Upgrade Guide: Merge Your web.xml File.
  4. Restart the application server.

Affected Versions

This article applies to 7.10 and later.

Last Reviewed: March 2017

Related
Recommended