After upgrading to a new version of Appian, JBoss fails to start with the following messages in the application server log
ERROR com.appiancorp.ix.diagnostics.Diagnostics - content SYSTEM_SYSRULES_util_isFolderValid The content [id= uuid=SYSTEM_SYSRULES_util_isFolderValid] was not imported because a required precedent is missing: content ##UUID## (Expression Rule Definition) cannot be found. (APNX-1-4070-001) (APNX-1-4071-006) ##FOLLOWED BY RULE DEFINITION## ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 93) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.applications.BundledApplicationsLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: A fatal error occurred when importing system packages: Found 1 failures when importing. Will try again upon restart: \ear\suite.ear\web.war\WEB-INF\bundled-apps\system.zip (APNX-1-4262-001)
Or
ERROR com.appiancorp.ix.diagnostics.Diagnostics - content SYSTEM_SYSRULES_deleteDocument An error occurred while creating content [uuid=SYSTEM_SYSRULES_deleteDocument]: The rule [name=deleteDocument uuid=SYSTEM_SYSRULES_deleteDocument] was not created because an expression function with the same name already exists. (APNX-1-4072-001) (APNX-1-4071-007) ##FOLLOWED BY RULE DEFINITION## ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/suite]] (ServerService Thread Pool -- 59) JBWEB000287: Exception sending context initialized event to listener instance of class com.appiancorp.applications.BundledApplicationsLoader: com.appiancorp.common.config.FatalConfigurationException: com.appiancorp.suiteapi.common.exceptions.AppianException: A fatal error occurred when importing system packages: Found 1 failures when importing. Will try again upon restart: /ear/suite.ear/web.war/WEB-INF/bundled-apps/system.zip (APNX-1-4262-001)
Alternatively, an OOTB function fails to execute as expected with an error similar to the following:
Expression evaluation error at function a!oobfn [line xx]: Incorrect number of parameters for function; expected X parameters, but found Y parameters.
This is most likely caused by a name collision by one of the objects defined by designers and one of the base system objects. The environment had a rule or constant with the same name as that of the OOB function prior to the upgrade that was deleted. As a result, Appian assumes that it’s this rule or constant that is referenced in the expression and not the function.
The steps to resolve these issues are listed below. They may vary depending on the nature of the observed issue.
If the application server had failed to start after the migration, then perform the following steps on the SOURCE environment and then redo the migration. Otherwise perform these steps on the migrated environment and restart the application server:
getConstantOrRuleUUIDByName("objectX")
=""
content
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <contentHaul xmlns:a="http://www.appian.com/ae/types/2009"> <rule> <name>test_KB1147</name> <uuid>_a-0001dcff-f301-8000-9ba2-011c48011c48_42670</uuid> ...
uuid
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <contentHaul xmlns:a="http://www.appian.com/ae/types/2009"> <rule> <name>test_KB1147</name> <uuid>1234</uuid> ...
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <contentHaul xmlns:a="http://www.appian.com/ae/types/2009"> <rule> <name>test_KB1147_name_change</name> <uuid>_a-0001dcff-f301-8000-9ba2-011c48011c48_42670</uuid> ...
<APPIAN_HOME>\_admin\plugins\
This article applies to all versions of Appian.
Last Reviewed: August 2016