Skip to main content
OutSystems

Default Platform Server and database configurations for Java

To install and run OutSystems, you need permissions to change files in the file system, run services, listen to specific ports, and make changes to the database. Learn what permissions are needed.

Server configurations

Hardware

The Platform Server must run on a server with a fixed MAC address. Changing the MAC address (either by physically changing the network card, of through virtualization software) results in an invalid license.

Software

All software required for installing the Platform Server is listed in the Platform Server installation checklist

Users and groups

All processes executed by OutSystems run using the ‘outsystems’ user: a regular user created during the installation process.

The Platform Server installer also creates a group named ‘outsystems’ and adds both the ‘outsystems’ and ‘jboss/wildfly’ users to this group. The installer also changes the ‘jboss/wildfly’ group to ensure that the ‘outsystems’ user is part of it. This ensures the ‘outsystems’ and ‘jboss/wildfly’ users have similar permissions in the file system.

The name of this user and group cannot be changed, otherwise OutSystems might misbehave.

File system

The Platform Server is installed at /opt/outsystems/platform and its configurations are stored at /etc/outsystems/server.hsconf. This file should not be edited manually, instead, use the Configuration Tool to change these settings. Also, the Platform Server stores configurations at /etc/.java/.systemPrefs/outsystems/prefs.xml. For this reason, you need to ensure that both the ‘outsystems’ and ‘jboss/wildfly users have read-write privileges for these files.

Environment variables

The environment variables used by the Platform Server are configured at /etc/sysconfig/outsystems. To expand these environment variables, use: source /etc/sysconfig/outsystems

Services

During the installation, OutSystems registers a service named ‘outsystems’ at /etc/init.d that is responsible for starting up the Platform Server services. Below you can find the list of services.

To configure your server for the role of front-end, or deployment controller, use the script available on /opt/outsystems/platform/serviceconfigurator.sh.

Service Executable /opt/outsystems/platform  Configuration /etc/outsystems Policy /etc/outsystems Logs /opt/outsystems/platform /logs
Deployment os.deployment.service.sh os.deploymentservice.properties os.deploymentservice.policy  DeployService.log 
DeploymentController os.controller.service.sh  os.controllerservice.properties os.controllerservice.policy DeployController.log
Log os.log.service.sh  os.log.service.properties os.log.service.policy  LogServer.log 
RMI rmi.sh      
Scheduler os.scheduler.service.sh os.scheduler.service.properties os.scheduler.service.policy Scheduler.log 

The communication between services is done using Java RMI. 

Database configurations

SQL Server

The SQL Server database must comply with the following requirements:

  • If you are using SQL Server authentication, the authentication mode needs to be set to “Mixed Mode”.
  • When using Windows Authentication, all front-ends and controller must use the same domain as the database server.
  • The collation of the SQL Server instance must be case-insensitive (CI_*).

Oracle

To integrate with an Oracle database, the NLS_CHARACTERSET must be set to WE8MSWIN1252 or AL32UTF8. Additionally, names of tables and columns you want to integrate must use uppercase letters only.

DB2

To integrate with DB2 database for iSeries, the installation of the IBM iAccess software is required in all Front-End and Deployment Controller server machines.

Application Server

The OutSystems installer ensures that the application server is properly configured to run the applications. These configurations include the maximum number of requests, the connection timeouts, maximum post size, and others. Below you can find the location of the customizations.

Application servers need to be configured to listen to ports:

  • 8080 for HTTP
  • 8443 for HTTPs

The OutSystems installer adds redirect rules to the iptables file to forward traffic from port 80 to 8080 and 443 to 8443.

JBoss

When you install OutSystems, a new profile ‘outsystems’ is created in JBoss, to store all configurations and customizations required.

These configurations can be found in $JBOSS_HOME/standalone/configuration/standaloneoutsystems.xml.

To configure the application server, for example to add support for SSL or set the maximum number of requests, you should change the same xml file as above. Read the JBoss official documentation to learn more about these configuration files and how to customize them. 

Wildfly

When you install OutSystems, a new profile ‘outsystems’ is created in Wildfly, to store all configurations and customizations required.

These configurations can be found in $WILDFLY_HOME/standalone/configuration/standalone-outsystems.xml.

To configure the application server, for example to add support for SSL or set the maximum number of requests, you should change the same xml file as above.

Please read the Wildfly official documentation to learn more about these configuration files and how to customize them.

Deployed applications

Applications source code

The server with the deployment controller role stores the application source code at /opt/outsystems/platform/share/<module name>/full. 

Compiled applications

During the deployment of an application, the Deployment Controller ensures the front-end servers have the compiled applications stored in the OutSystems installation folder, and proceeds to created symbolic links from the application server deployment folders to these.

The compiled applications are stored at:

  • Shared Libraries - /opt/outsystems/platform/repository
  • Applications - /opt/outsystems/platform/running

The application server deployment folder can be found at:

  • Boss - $JBOSS_HOME/standalone/deployments
  • Wildfly - $WILDFLY_HOME/standalone/deployments.

Logging

OutSystems has built-in logic capabilities to monitor the applications during runtime. To ensure the performance of the applications is not compromised, the logs are performed asynchronously, using a message queue. The Log service then consumes the messages in these queues and inserts them in the OutSystems' Log tables. You can then use the environment management console to see the logs.

JBoss

OutSystems uses HornetQ as message queue. The message queues created, can be found in $JBOSS_HOME/standalone/configuration/standalone-outsystems-mq.xml, and are configured to be persisted in secondary memory.

To learn how to configure the logging capabilities, check JBoss official documentation.

Wildfly

OutSystems uses HornetQ as message queue. The message queues created, can be found in $WILDFLY_HOME/standalone/configuration/standalone-outsystems-mq.xml, and are configured to be persisted in secondary memory. To learn how to configure the logging capabilities, please check Wildfly official documentation.