The following instructions provide guidelines for installing Corticon Server 7.3 into Tomcat to create a runtime environment similar to previous Corticon releases. For additional details, refer to the Corticon Deployment Guide .
Note: The Web Console 7.1.3 is a separate download and install as it requires Java 17 and Tomcat 9.

Folder Setup

The steps below assume that the Linux system folders are setup as follows:

  • /usr/lib/jvm/java-21-openjdk/amd64 : Java 21 installation

  • /opt/tomcat : Apache Tomcat 10 installation

  • /usr/local/Progress/Corticon 7.3: Default Corticon 7.3 installation

  • /opt/tomcat/work: User chosen work directory for Corticon Server

Change the folder locations as needed in each step to match your configuration.

How to install Corticon Runtime on Linux

Note: These steps describe how to install Corticon Server on Tomcat. The steps are conceptually the same for other supported app servers (see Corticon Supported Platforms Matrix) even though the semantics will likely vary.

Perform the following steps:

  1. Create a dedicated Tomcat user and group:
    > sudo useradd -r -s /sbin/nologin tomcat
    > sudo groupadd tomcat
    > sudo usermod -aG tomcat tomcat		
  2. Install Tomcat:
    1. Download the binary distribution of Apache Tomcat for Linux platform from: https://dlcdn.apache.org/tomcat/tomcat-10
    2. Extract the downloaded files to:
      > sudo mkdir /opt/tomcat
      > sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1
      > sudo chown -R tomcat:tomcat /opt/tomcat
    3. Adjust the file and directory permissions:
      > cd /opt/tomcat
      > sudo chmod -R 755 /opt/tomcat/bin 
      > sudo chmod -R 644 /opt/tomcat/conf 
      > sudo chmod -R 644 /opt/tomcat/lib
      > sudo chmod -R 664 /opt/tomcat/logs
      > sudo chmod -R 777 /opt/tomcat/temp
      > sudo chmod -R 755 /opt/tomcat/webapps
      > sudo chmod -R 777 /opt/tomcat/work
  3. Prepare Tomcat for the Corticon Server:
    Note: The log file location, CDD location, and Decision Service deployment file location all depend on the CorticonServerWork directory. To change the CorticonServerWork directory, add a trtup.sh to the Tomcat bin directory. Edit the setenv.sh file to include the example CATALINA_OPTS line below. The setenv.sh file will be initialized by the Tomcat catalina.sh file automatically to set the CorticonServerWork directory.
    1. Edit the file: =/opt/tomcat/bin/startup.sh , and then add the lines:
      Environment=JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 
      Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
      Environment=CATALINA_HOME=/opt/tomcat 
      Environment=CATALINA_BASE=/opt/tomcat  
      
      ExecStart=/opt/tomcat/bin/startup.sh 
      ExecStop=/opt/tomcat/bin/shutdown.sh 	
    2. Create the work directory:
      > sudo mkdir /usr/local/Progress/Corticon_Server_Work_7.3
      Create the setenv.sh file:
      > cd /opt/tomcat/bin
      > sudo nano setenv.sh				
    3. Add the export Tomcat and Java options to setenv.sh:
      export CATALINA_OPTS="$CATALINA_OPTS 
              -Dfile.encoding=UTF-8 
              -DCORTICON_WORK_DIR=/usr/local/Progress/Corticon_Server_Work_7.3 
              -DCORTICON_SETTING=SER 
              -CORTICON_LICENSE=/usr/local/Progress/Corticon_Server_Work_7.3/license/Server/CcLicense.jar 
              -DCORTICON_SETTING=SER"
      export JAVA_OPTS="-Xms1g -Xmx2g"
    4. Modify the execution permissions for this file to Tomcat user group:
      > chown :tomcat ./setenv.sh
      > chmod g+x ./setenv.sh
    5. Install the license:
      > cd /usr/local/Progress/Corticon_Server_Work_7.3
      > sudo mkdir license
      > cd license
      > sudo mkdir Server
      > sudo chmod 644 /usr/local/Progress/Corticon_Server_Work_7.3/license/Server
      > sudo cp /tmp/CorticonInstall/CcLicense.jar /usr/local/Progress/Corticon_Server_Work_7.3/license/Server
    6. Install the .war files into Tomcat:
      > sudo cp /usr/local/Progress/Corticon_7.3/Server/Deploy/Tomcat/10/axis.war /opt/tomcat/webapps/
      
Start Tomcat: Reload systemd and start Tomcat:
> sudo systemctl daemon-reload
> sudo systemctl start tomcat		
> sudo systemctl enable tomcat		
To confirm that Corticon server is running, in Linux enter:
> curl http://<Server IP>:8850/axis/corticon/server/ping

Configure the app server installation

Several tunings can improve your installation. Restart the app server after you make any changes.

  • Date and time-Check your Linux Server's date/time settings, especially in Cloud implementations. Your local time should be properly recorded in the Web Console statistics and Corticon Server log files.
  • Encryption-Use HTTPS and then see the topics under Secured deployment on Java web services
  • Tomcat Port: Edit the file:
    > cd /opt/tomcat/conf/
    > sudo nano server.xml
    and then set the preferred ports (the port settings here reflect those previously used by Corticon):
    <Connector port="8850" 
    			protocol="HTTP/1.1" 
    			connectionTimeout="20000" 
    			redirectPort="8851" 
    			maxParameterCount="1000"/>
    <Server port="8852" shutdown="SHUTDOWN"> 
  • BRMS Properties:—The brms.properties file is installed by default with several commented-out options to help you tune the behavior of a Corticon deployment. For additional properties, see If you are upgrading from a previous version of Corticon, you should assess the differences between the prior file and the installed one, and then either reuse the prior file or update the installed file. To copy it to the Corticon Server Work directory:
    > sudo cp /usr/local/Progress/Corticon_7.3/Server/brms.properties
    		   /usr/local/Progress/Corticon_7.3/Corticon_Server_Work_7.3/brms.properties
    Any changes to the brms.properties file are not implemented until you restart the Tomcat service.
  • Tomcat as a service - Create a systemd service file to run Tomcat as a service. This ensures that if your Linux machine is rebooted, Tomcat and Corticon will auto-start:
    > sudo nano /etc/systemd/system/tomcat.service
    Add content to the Tomcat service definition:
    [Unit] 
    Description=Tomcat Corticon Server 7.3 
    After=network.target 
    						
    [Service] 
    Type=forking 
    Environment=JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat 
    						
    ExecStart=/opt/tomcat/bin/startup.sh 
    ExecStop=/opt/tomcat/bin/shutdown.sh 
    						
    User=tomcat 
    Group=tomcat 
    UMask=0007 
    RestartSec=10 
    Restart=always 
    						
    [Install] 
    WantedBy=multi-user.target