You are currently reviewing an older revision of this page.

DRAFT KB-XXXX Tomcat fails with "java.lang.IllegalArgumentException: Input byte array has wrong 4-byte ending unit"


Tomcat fails to deploy Appian with the following error seen in the <APPIAN_HOME>\logs\tomcat-stdOut.log:

INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deploying configuration descriptor [<APPIAN_HOME>\tomcat\apache-tomcat\conf\Catalina\localhost\suite.xml]
WARNING [localhost-startStop-1] org.apache.naming.NamingContext.lookup Unexpected exception resolving reference
java.lang.IllegalArgumentException: Input byte array has wrong 4-byte ending unit
at java.util.Base64$Decoder.decode0(
at java.util.Base64$Decoder.decode(
at java.util.Base64$Decoder.decode(
at com.appiancorp.tomcat.encoding.EncodingCryptographer.decodePassword(


The encoded password configured in <APPIAN_HOME>\tomcat\apache-tomcat\conf\Catalina\localhost\suite.xml is incorrect.


Encode the correct database password as described in this step and make sure it is updated in the suite.xml.

Affected Versions

This article applies to Appian 18.3 and later.

Last Reviewed: September 2018