Tool Files
When you install other Altova servers alongside FlowForce Server, a .tool file is installed for each application that can run under FlowForce Server management. You can install these server products by selecting them in the FlowForce Server installation wizard or by installing them later using their stand-alone installers. The following Altova products can run under FlowForce Server management:
You do not need to configure .tool files unless you need to change environment variables required by MapForce Server or StyleVision Server (for example, CLASSPATH).
Installation and instance-data directories
FlowForce Server uses .tool files to locate and configure the execution of other server applications under its management. FlowForce Server first scans INSTANCEDIR for .tool files and then scans INSTALLDIR. The tables below show the paths of these directories on different operating systems. The directories shown for INSTANCEDIR are the default paths. During the configuration of FlowForce Server, you can set a custom path for INSTANCEDIR.
FlowForce Server instance-data directory (INSTANCEDIR) | |
|---|---|
Linux | /var/opt/Altova/FlowForceServer/data |
Windows | C:\ProgramData\Altova\FlowForceServer\data |
FlowForce Server installation directory (INSTALLDIR) | |
|---|---|
Linux | /opt/Altova/FlowForceServer2027/ |
Windows | C:\Program Files\Altova\FlowForceServer2027\ C:\Program Files (x86)\Altova\FlowForceServer2027\ |
The INSTANCEDIR\tools directory is usually empty. You can place customized tool files in this directory. The INSTALLDIR directory is managed by the installation process, and the .tool files in it must not be edited.
Order of installation
You can find .tool files in the INSTALLDIR directory if MapForce Server or StyleVision Server is installed after FlowForce Server. If the .tool file exists neither in INSTANCEDIR nor in INSTALLDIR, it is likely that FlowForce Server was installed after MapForce Server or StyleVision Server. In this case, you can find the .tool file in the etc directory relative to the MapForce Server or StyleVision Server installation directory.
Information messages
FlowForce Server groups running tool process instances and manages them as configured in the .tool files. FlowForce Server manages the processes it starts for other server applications. The following events may produce information messages in the log:
Starting instance {id} of {tool} for {session}. Starting {commandline}. Instance {id} of {tool} for {session} is now idle. Shutting down instance {id} of {tool} for {session}; sitting idle for too long. Shutting down instance {id} of {tool} for {session}; maximum reuse count reached. Instance {id} of {tool} for {session} unexpectedly ceased communication. Instance {id} of {tool} for {session} attached to job instance {instanceid}. |
If steps or jobs fail, this generates a separate log message.
Tool file editing
Files with a .tool extension can be edited in a text editor (for example, Notepad++). The following editing options are available:
1.[Tool]: In this section, you can change the path to the tool's executable. For example, you may need to update the path to use a different version of the executable.
2.[Environment]: You can add or edit this section to define environment variables required by the tool. For more information, see Environment Variables below.
Important:
•When you edit a .tool file in INSTANCEDIR, changes take effect immediately. You do not have to restart FlowForce Server.
•Do not change any .tool file settings other than the ones mentioned above, unless advised by Altova Support.
•It is not possible to define custom tools.
Environment variables
When MapForce Server mappings or StyleVision Server stylesheets run under FlowForce Server management, they may require environment variables to be set. For example, you need to set CLASSPATH to specify the location of the JDBC drivers when connecting to a database.
To set environment variables required by MapForce Server mappings or StyleVision Server transformations, edit the .tool file of the corresponding Altova server product. Before editing the .tool file, check whether it already exists in the INSTANCEDIR directory. If not, copy it from INSTALLDIR of FlowForce Server.
CLASSPATH
You can add the required environment variables under the [Environment] section in the .tool file. The environment variables set in the .tool file override the environment variables defined by other means. The following example of a .tool file (Linux) sets the CLASSPATH variable:
[Environment]
CLASSPATH=.:/usr/local/jdbc/oracle/ojdbc6.jar
PYTHONHOME and VIRTUAL_ENV
To run a mapping containing custom Python functions with FlowForce Server, configure the Python environment in the .tool file for MapForce Server and make the Python module available on the machine where FlowForce Server runs.
Note: All directories and files required by the mapping must be readable by the user under whose credentials the FlowForce job runs.
For more information about using custom Python functions in MapForce, see the topic Custom Python Libraries in the MapForce documentation (https://www.altova.com/documentation#mapforce).
By default, MapForce Server searches for the Python module in the directory from which it was imported into MapForce at design time. If FlowForce Server runs on another machine and the module is not available there, copy the module to that machine and make sure that Python can find it. For information about how Python locates modules, see the Python documentation.
Windows
If you use a Python virtual environment, set VIRTUAL_ENV to the virtual environment and PYTHONHOME to the base Python installation under the [Environment] section of the MapForce Server .tool file. For example:
[Environment]
VIRTUAL_ENV=C:\Users\<User>\.venv
PYTHONHOME=C:\Python314
MapForce Server searches for the Python installation in the following order:
1.VIRTUAL_ENV
2.PYTHONHOME
3.PATH
Linux
On Linux, create a Python virtual environment and specify it in the MapForce Server .tool file. A virtual environment is recommended because installing Python modules in system directories may require root access.
MapForce Server searches for the Python installation in the following order:
1.VIRTUAL_ENV
2.PATH
To create a Python virtual environment, use the following command:
python3 -m venv ./.venv
To specify the virtual environment, edit the MapForce Server .tool file as follows:
[Environment]
VIRTUAL_ENV=/home/<user>/.venv
You can place the module in the virtual environment's site-packages directory. For example, for Python 3.14, the directory on Linux might be:
~/.venv/lib/python3.14/site-packages/
Alternatively, you can install the Python module using pip, for example:
pip install -e .
This command requires a TOML configuration file that specifies the location of the Python source code. The installation adds the module's path to sys.path automatically.