I'm upgrading appian from 18.3 to 19.1 and have made all required changes however when i try to start the appserver it creates a new folder in the default appian log directory called "tomcat" but there are no logs in that folder. Previous release did have tomcat-stdout.log file that contained logs for the tomcat server has any one else run into this issue?
Discussion posts and replies are publicly visible
So i was able to resolve this with some help from appian. The issue currently is on Windows installation i have not tested this on Linux. As per Appian documentation jdk is now built into appian which is great but with that a few more environment variables needs to be defined. 1. JAVA_HOME this need to be <APPIAN_HOME>\java 2. JRE_HOME this need to be <APPIAN_HOME>\java\jre 3. CATALINA_HOME this needs to be <APPIAN_HOME>\tomcat\apache-tomcat 4. In the path variables add %CATALINA_HOME%\lib If step 2 -4 are not carried out appian installation will run without any errors but appserver wont start and neither will tomcat as startup.bat is looking for Catalina_home environment variable. Starting 19.1 is different. After executing <APPIAN_HOME>\tomcat\apache-tomcat\bin\start-appserver.bat you also need to execute <APPIAN_HOME>\tomcat\apache-tomcat\bin\startup.bat ( thanks appian for pointing this) this will execute the tomcat and catalina process. While tomcat is running look for error " SEVERE [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Error deploying configuration descriptor [C:\appian191\appian\tomcat\apache-tomcat\conf\Catalina\localhost\suite.xml]java.io.FileNotFoundException: ..\..\..\conf\tomcatResources.xml (The system cannot find the path specified)" or "Failed to start component [/suite]" this is due to suite.xml having incomplete information. Suite.XML can be found in <APPIAN_HOME>\tomcat\apache-tomcat\conf\Catalina\localhost\ . Here's what my initial suite.xml looked like <!DOCTYPE config-xml [ <!ENTITY datasource-config SYSTEM "file:../../../conf/tomcatResources.xml"> ]> <Context docBase="${ae.home}/deployment/web.war" mapperDirectoryRedirectEnabled="true" swallowOutput="true"> <Loader loaderClass="com.appiancorp.tomcat.loader.AppianWebappClassLoader"/> <JarScanner> <JarScanFilter pluggabilitySkip="*" tldSkip="*" tldScan="${tomcat.util.scan.StandardJarScanFilter.jarsToScan}, string-*.jar, kcServlet-*.jar, taglibs-standard-impl-*.jar, regexp-*.jar, taglibs-standard-jstlel-*.jar, sitemesh-*.jar, jersey-server-*.jar, pluto-taglib-*.jar, i18n-*.jar, datetime-*.jar, struts-el-*.jar, struts-taglib-*.jar, struts-tiles-*.jar" /> </JarScanner> <!-- Imported datasources from AE_HOME/conf/tomcatResources.xml --> &datasource-config; <!-- In order to start a local broker the property conf.jms.embeddedBrokerEnabled must be set to true in custom.properties --> <Resource name="jms/AppianProcessIntegrationConnectionFactory" type="org.apache.activemq.ActiveMQConnectionFactory" auth="Container" description="Appian Process Integration JMS Connection Factory" factory="org.apache.activemq.jndi.JNDIReferenceFactory" brokerURL="tcp://localhost:61616" useEmbeddedBroker="true" brokerName="AppianActiveMQBroker"/> <Resource name="jms/AppianProcessIntegrationQueue" type="org.apache.activemq.command.ActiveMQQueue" factory="org.apache.activemq.jndi.JNDIReferenceFactory" physicalName="APPIAN.PROCESS.INTEGRATION.QUEUE" auth="Container"/> <Resources cachingAllowed="false"> <PostResources base="${ae.home}/deployment/web.war/WEB-INF/resources" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/classes" /> <PostResources base="${ae.home}/conf" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/classes" /> </Resources> <Manager pathname="" /> <!-- BEGIN ACCESSLOG --> <Valve className="org.apache.catalina.valves.ExtendedAccessLogValve" directory="${ae.home}/logs" prefix="tomcat-access.log" pattern="date time cs-uri x-P($bgUrl) sc-status time-taken" conditionUnless="no-access-log" /> <!-- END ACCESSLOG --> </Context> My Modified suite.xml has datasource values: <Context docBase="${ae.home}/deployment/web.war" mapperDirectoryRedirectEnabled="true" swallowOutput="true"> <Loader loaderClass="com.appiancorp.tomcat.loader.AppianWebappClassLoader"/> <JarScanner> <JarScanFilter pluggabilitySkip="*" tldSkip="*" tldScan="${tomcat.util.scan.StandardJarScanFilter.jarsToScan}, string-*.jar, kcServlet-*.jar, taglibs-standard-impl-*.jar, regexp-*.jar, taglibs-standard-jstlel-*.jar, sitemesh-*.jar, jersey-server-*.jar, pluto-taglib-*.jar, i18n-*.jar, datetime-*.jar, struts-el-*.jar, struts-taglib-*.jar, struts-tiles-*.jar" /> </JarScanner> <!-- BEGIN DATASOURCES --> <Resource name="jdbc/AppianDS" factory="com.appiancorp.tomcat.datasource.EncodedPasswordDataSourceFactory" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/appian_schema?useOldAliasMetadataBehavior=true&useUnicode=true&characterEncoding=utf8" username="xxxx" password="xxxxxx" initialSize="5" maxTotal="100" defaultTransactionIsolation="READ_COMMITTED" maxWaitMillis="30000" minIdle="5" minEvictableIdleTimeMillis="90000" timeBetweenEvictionRunsMillis="450000" numTestsPerEvictionRun="100" accessToUnderlyingConnectionAllowed="true" validationQuery="SELECT 1" testOnBorrow="true" /> <!-- END DATASOURCES --> <!-- In order to start a local broker the property conf.jms.embeddedBrokerEnabled must be set to true in custom.properties --> <Resource name="jms/AppianProcessIntegrationConnectionFactory" type="org.apache.activemq.ActiveMQConnectionFactory" auth="Container" description="Appian Process Integration JMS Connection Factory" factory="org.apache.activemq.jndi.JNDIReferenceFactory" brokerURL="tcp://localhost:61616" useEmbeddedBroker="true" brokerName="AppianActiveMQBroker"/> <Resource name="jms/AppianProcessIntegrationQueue" type="org.apache.activemq.command.ActiveMQQueue" factory="org.apache.activemq.jndi.JNDIReferenceFactory" physicalName="APPIAN.PROCESS.INTEGRATION.QUEUE" auth="Container"/> <Resources cachingAllowed="false"> <PostResources base="${ae.home}/deployment/web.war/WEB-INF/resources" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/classes" /> <PostResources base="${ae.home}/conf" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/classes" /> </Resources> <Manager pathname="" /> <!-- BEGIN ACCESSLOG --> <Valve className="org.apache.catalina.valves.ExtendedAccessLogValve" directory="${ae.home}/logs" prefix="tomcat-access.log" pattern="date time cs-uri x-P($bgUrl) sc-status time-taken" /> <!-- END ACCESSLOG --> </Context> Restarted the appian start process and it worked. This has only been seen on Appian Windows installation havent tested it on Linux yet.
Appian has confirmed it's a issue in 19.1 and will be addressed in the upcoming hotfix