Install Genero Application Server

These topics relate to the installation of the Genero Application Server.

The installation and licensing of Genero products requires you to read and accept the End User License Agreement, which can be found on the Four Js website at https://4js.com/end-user-license-agreements/.

Installation can vary depending on the host operating system. Ensure you follow the installation instructions for your host operating system.

The software is provided as an auto-extractable installation program (i.e. product files and installation program are provided in the same file). The name of the package includes the operating system type and version. You must install the Genero Application Server software package corresponding to the operating system that you use.

The Genero Application Server and the Genero BDL runtime should be installed on the same machine.

System requirements

For details about system requirements, refer to the Supported platforms and databases document (available on the Download page of the Four Js Web site) or contact your support center.

Genero compatibility for the GAS

Determine the compatibility of different versions of the Genero product family and the Genero Application Server.

GAS 4.01 and Genero compatibility

When using Genero Application Server (GAS) 4.01, ensure the other Genero components are based on compatible versions.

The GAS and DVM should be in sync; GAS 4.01 should use FGLGWS 4.01.

The following Genero clients are compatible:
  • GDC HTTP 5.00 and 4.01
  • GBC 4.01
  • GMA 4.01 (where the mobile client is using runOnServer to connect to a server-side application.)
  • GMI 4.01 (where the mobile client is using runOnServer to connect to a server-side application.)

GAS 3.21 and Genero compatibility

When using Genero Application Server (GAS) 3.21, ensure the other Genero components are based on compatible versions.

The GAS and DVM should be in sync; GAS 3.21 should use FGL 3.21.

The following Genero clients are compatible:
  • GDC HTTP 5.00 and 3.21
  • GBC 1.00

GAS 3.10 and Genero compatibility

When using Genero Application Server (GAS) 3.10, ensure the other Genero components are based on compatible versions.

The GAS and DVM should be in sync; GAS 3.10 should use FGLGWS 3.10.

The following Genero clients are compatible:
  • GDC HTTP 3.10 and GDC HTTP 3.20
  • GBC 1.00
Important:

Genero Web Client for JavaScript (GWC-JS) applies to the Web client 3.xx and lower. Starting with 3.10, GWC-JS was renamed as the Genero Browser Client (GBC).

Install GAS on UNIX platforms

Follow these steps to install the Genero Application Server on UNIX™ platforms.

The installation and licensing of Genero products requires you to read and accept the End User License Agreement, which can be found on the Four Js website at https://4js.com/end-user-license-agreements/.

The installation program provides options that allow you to specify configuration options from the command line. You can display the installation program options using the -h option:

./fjs-gas-version-buildYYYYMMDDhhmm-osident.run -h

Example:

$ ./fjs-gas-4.01.01-build202209201536-l64xl217.run -h

The installation program identifies the operating system and checks that all the system requirements are met before starting to copy the product files to disk.

  1. To perform the installation, run the auto-extractable shell script:

    ./fjs-gas-version-buildYYYYMMDDhhmm.run

    Example:

    ./fjs-gas-4.01.01-build202209201536-l64xl217.run

  2. Once the files are copied to disk, follow the instructions displayed.
What to do next:

When you have completed the installation of the GAS, configure the Web server using the FastCGI extension. Afterwards, validate your installation with the Genero Browser Client or with the Genero Desktop Client.

Tip:

If you have configurations from a previous installation version, for example in your as.xcf, avoid copying these files in to your new installation. The preferred practice is to use the default from the new install package so that you benefit from any new or changed syntax it may contain and then reapply your custom changes.

Install the GAS on UNIX platforms in silent mode

Install the Genero Application Server (GAS) silently on GNU/Linux® and UNIX platforms.

To start the installation, type the following:

./fjs-gas-version-buildYYYYMMDDhhmm-osident.run -a -q --no-desktop -t install_dir

For example:

./fjs-gas-4.00.00-build202006031443.-a640710.run -a -q --no-desktop -t $PWD/gas-4.00

Options

Table 1 shows the options relating to installation.

Table 1. UNIX install options
Install option Description
-a or --accept Bypass the display and the prompt for acceptance of the license agreement. Using the -a option indicates that you have read and accepted the End User License Agreement, located on the Four Js website at https://4js.com/end-user-license-agreements/.
-c or --check Check integrity of the archive and of bzip2/tar binaries embedded in this program.

-f backup|overwrite|remove or

--force backup|overwrite|remove

Specify what happens if the installation directory already exists:
  • backup: Back up the installation directory.
  • overwrite: Overwrite installation file.
  • remove: Delete installation directory before installing.
-k or --keep Do not delete working directory when done.
-l or --list Print the list of files in the archive.
-h or --help Display help about all possible options.
-i or --install Install the product.
Important:

This option is not recommended. It is included only for backward compatibility.

-s license or

--show license

Display the license of the product.
-n or --nocheck Escape the checksum test on the archive included in the installer.
-q or --quiet Silent mode with no UI. If -q is not specified, the interactive installer is used.
-r or --root Allow the 'root' user to install the package.
Important:

Installing as root is not recommended. It is recommended that you install while logged in as a non-root user.

-V or --version Show the version number.

-t install_dir or

--target install_dir

Install the product in the specified target directory. If this option is not specified, the default installation is used.

-w working_dir or

--work working_dir

Specify the working directory. By default, a temporary directory is created in $TMPDIR or /tmp.
-x or --extract Extract the contents of this program, but do not run fglgws-installer. This option implies --keep.
-d or --dvm

Specify the FGL directory to configure .xcf files.

--gredir

Specify the GRE directory to configure .xcf files.

--no-desktop Desktop bindings are not installed, which means:
  • Desktop and system menu icons are not created.
  • File types are not automatically associated with the product.

Systemd service template

Using the dispatcher systemd template allows you to run commands to stop and start the service using systemctl in Unix-like systems.

Systemd templates for the fastcgidispatch and httpdispatch dispatcher are provided in the FGLASDIR/systemd directory.

Warning:

The systemd feature is available on Linux only.

The systemd files (.service ) contain the service configuration options that allow you to control the dispatcher service via UNIX systemctl commands. The basic commands to use the service are provided; you may want to adapt the template to suit your needs. For more information on working with systemd, see the systemd documentation.

An example of the systemd template for fastcgidispatch, fastcgidispatch.service, is shown in the sample.

# Installed in the global system
#
# /lib/systemd/system/fastcgidispatch.service
# systemctl daemon-reload
# systemctl stop fastcgidispatch.service
# systemctl start fastcgidispatch.service
# systemctl status fastcgidispatch.service
#
# Installed in user space
#
# ~/.config/systemd/user/fastcgidispatch.service
# systemctl --user daemon-reload
# systemctl --user stop fastcgidispatch.service
# systemctl --user start fastcgidispatch.service
# systemctl --user status fastcgidispatch.service

[Unit]
Description=Genero Application Server 4.01.02-202304031114
After=network.target nss-lookup.target
Documentation=https://4js.com/online_documentation/fjs-gas-manual-html/

[Service]
Type=exec
Environment=FGLASDIR=/opt/fourjs/gas
ExecSearchPath=/opt/fourjs/gas/bin
ExecStart=fastcgidispatch -s
ExecStop=/bin/kill -s TERM $MAINPID
# KillMode=process -> only the dispatcher killed, proxies remain but many warnings in logs
#                     sessions remain valid if dispatcher restarts.
# KillMode=mixed -> dispatcher and proxies are killed -> all sessions lost.
KillMode=mixed
Restart=on-abort
RestartSec=15
SuccessExitStatus=SIGTERM 0

# If files are generated in /tmp and external apps expect to have access to it,
# either change PrivateTmp to false, or change the output directory for these files.
PrivateTmp=true

[Install]
WantedBy=multi-user.target
Where:
  • Examples of the systemctl commands you can use to manage the service are included in the comments at the top of the file.
  • The configuration items are in the [Unit], [Service], and [Install] sections.
  • The ExecSearchPath parameter specifies the path to the dispatcher for the service. It affects where systemd looks for the commands specified in ExecStart, ExecStop, and so one. This parameter was introduced in systemd version 250. If your version of systemd is earlier (run systemctl --version), you will need to include the complete path to the dispatcher commands in the Exec* parameters.

Usage

There are different ways of using the template depending on your requirements. You can either set the service as a global service or as a user service. For this example we set the fastcgidispatch service as a global system service:
  • Copy the FGLASDI/systemd/fastcgidispatch.service service file to the /lib/systemd/system directory.
  • Reload the systemd configuration:
    $ systemctl daemon-reload
  • Now you should be able to start and stop the dispatcher service.
    $ systemctl start fastcgidispatch.service
    $ systemctl stop fastcgidispatch.service
  • To configure the service to start automatically on boot, you need to enable it:
    $ systemctl enable fastcgidispatch.service
  • To check the service logs, run:
    $ journalctl -u fastcgidispatch.service

Install GAS on Windows

Install the Genero Application Server on Microsoft® Windows® platforms.

The installation and licensing of Genero products requires you to read and accept the End User License Agreement, which can be found on the Four Js website at https://4js.com/end-user-license-agreements/.

On Microsoft Windows, the GAS is provided as a standard Windows setup program.

The installation program and the distribution files are provided in the same file:

fjs-gas-version-buildYYYYMMDDhhmm-osident.exe

To install, execute the setup program:

Example:

fjs-gas-4.01.01-build202209201536-w64v142.exe

A wizard guides you through the installation process.

What to do next:
Tip:

If you have configurations from a previous installation version, for example in your as.xcf file, avoid copying this in to your new installation. The preferred practice is to use the default configuration file from the new install package so that you benefit from any new or changed syntax it may contain and then reapply your custom changes.

When installation is complete, you can configure the GAS.

Install GAS on Windows in silent mode

Install the Genero Application Server on Windows platforms using the MSI installer.

The installation and licensing of Genero products requires you to read and accept the End User License Agreement, which can be found on the Four Js website at https://4js.com/end-user-license-agreements/.

The msiexec utility provides the means to install, modify, and perform operations on Windows Installer from the command line. The /qn option allows you to install in silent mode. The msiexec utility expects an msi file. To be compliant with Microsoft User Access Control (UAC) requirements, the msi file is embedded inside an exe file. To extract the msi file from the exe file, use the /x option:

fjs-gas-version-build-osident.exe /x

For example:

fjs-gas-4.00.00-build202006181213-w64v141.exe /x

A msi file is created in the same directory and with the same name as the exe file.

Options

Table 2 shows the most common options for msiexec relating to installation and un-installation.

Table 2. msiexec install and uninstall options
msiexec option Description
/qn Silent mode with no UI. If /qn is not specified, the graphical installer is used.
/i package-name.msi Install the specified msi package.
/x package-name.msi Uninstall the specified msi package.
/log logfile Write processing info to the specified log file.
/l*vx logfile Provide verbose (detailed) logs in the specified log file.

Enter msiexec from the command prompt to view the complete list of available options.

Arguments

You can pass arguments to the msiexec installer on the command line.

Table 3. Arguments for the misexec installer
Argument Description
PRODUCTDIR=your_gasdir_path Path where GAS will be installed. It is an alias of GASDIR.
GASDIR=your_gasdir_path Path where GAS will be installed. It is an alias of PRODUCTDIR.
FGLDIR=your_fgldir_path Path where Genero BDL is installed. Used only when SETFGLDIR=1.
SETFGLDIR=1 Enable the FGLDIR variable. Default value is 0 (zero).
GREDIR=your_gredir_path Path where GRE is installed. Used only when SETGREDIR=1.
SETGREDIR=1 Enable the GREDIR variable. Default value is 0 (zero).
STARTMENUFOLDER=your_startmenufolder_path Customize the location for the shortcuts in the startmenu. For example: "fjs\gas"
FORCEREMOVEPRODUCTDIR=YES On uninstall, remove the PRODUCTDIR location even if it is not empty. Default value: ""
Note:

Quotes are only required around the argument value when a space character is in the value string.

Silent install example

msiexec /qn /i fjs-gas-4.00.00-build202006181213-w64v141.msi /log gas4_00.log PRODUCTDIR=c:\tmp\gas2

Silent uninstall example

msiexec /qn /x fjs-gas-2.50.04-build129065-v32v100.msi /log as2_50_04.log

Install GAS on macOS

Before you begin

The installation and licensing of Genero products requires you to read and accept the End User License Agreement, which can be found on the Four Js website at https://4js.com/end-user-license-agreements/.

You need a macOS™ and an user account which has administrator access level.

Download the installation package for the macOS .

You should have completed the installations for Genero BDL (mandatory) and Genero Report Engine (if necessary) before you start this task.
  • The installation of Genero BDL is mandatory.
  • The installation of Genero Report Engine is only necessary if you plan to use the Genero Report Writer through applications running on the GAS.

You will be asked to provide the directory paths for both BDL and GRE.

Genero packages for Apple® Mac® and the macOS operating system are provided as x86 packages, which are designed to run on Intel® processors. Rosetta enables a Mac with Apple silicon to use apps built for a Mac with an Intel processor. If you are using such a machine, you will be asked to install Rosetta the first time you install or open your Genero app. Rosetta works automatically in the background whenever you use an app that was built only for Mac computers with an Intel processor. It translates the app for use with Apple silicon. If Rosetta is already installed, you are not asked to install it again.

About this task

Follow these instructions to install the Genero Application Server on macOS.

  1. Determine the directory where you will install the product.
    The wizard will eventually suggest /opt/fourjs/gas. If you plan to use this default, ensure you have write permission to this directory.
  2. Log in as a user with permission to write to the directory in which you plan to install this product.
  3. Copy the self-extractable file into a temporary directory.
  4. From a command prompt, run the self-extractable shell script:
    sh fjs-gas-version-buildYYYYMMDDhhmm-osident.run

    Example:

    sh fjs-gas-4.01.01-build202209201536-m64x1014.run

  5. Follow the instructions displayed.
    Tip:

    After you have read the licensing agreement, press "q" to return to the instructions and prompts.

What to do next

When installation is complete, you can configure the GAS.