KB-1728 Tomcat fails with "java.lang.IllegalArgumentException: Input byte array has wrong 4-byte ending unit"
Symptoms
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(Base64.java:704)
at java.util.Base64$Decoder.decode(Base64.java:526)
at java.util.Base64$Decoder.decode(Base64.java:549)
at com.appiancorp.tomcat.encoding.EncodingCryptographer.decodePassword(EncodingCryptographer.java:25)
Cause
The encoded password configured in <APPIAN_HOME>\tomcat\apache-tomcat\conf\Catalina\localhost\suite.xml is incorrect.
Action
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
