HowTo: Configuring Protection for GXflow Installed on Linux, AIX and OS400

Official Content
This documentation is valid for:

Deprecated: Since GeneXus 15 Upgrade 8. Replaced by GXflow license scheme.

Note: f the application is running on Linux and needs to use licenses from a Windows Server, please see GXflow centralized licenses configuration (GXflow on Linux).

In order to have the GXflow client and protection running on some of these environments, the following steps have to be followed:

Step 1 – Copying files

Download the files from here.

  1. Create a directory for the License Manager and extract the downloaded .zip file.
  2. Extract the files into it. The licmgr.jar, products.xml, agxpgetlicinfo.jar, and readme.txt files will be extracted.
  3. Create another directory where the licenses will be installed and copy the products.xml file to it. 
  4. Copy agxpgetlicinfo.jar into the Tomcat´s lib folder.

Note: this example will install the license under /gxprot/license, but it can be installed elsewhere.


The application server should be run as a user that has read and write permissions on the directory (and files) where the license is installed.

Tip 1: use command chmod to change the access permissions to file system folder and files of the protection, for example:

chmod -R 744 /gxprot

Tip 2: use command chown to change the owner of the folder and files of the protection, for example:

chown -R tomcat6:tomcat6 /gxprot


Step 2 – Configuring the webapp

In the webapp libraries (lib directory), add the file agxpgetlicinfo.jar.

Also, provide the webapp with the complete path to the directory where the license will be installed.
There are several ways to do this:
1. Through an environment entry in the application´s web.xml. To do so, add the following code to the web.xml.
The above example specifies that the license directory is /gxprot/license—the full path to the directory where the licenses will be installed must be entered here.
2. Using a text file. To do so, create a file called gxprotect.dir. This file must contain a line with the complete path to the license directory. This file must be copied to the classes directory of the webapp.

Step 3 – Installing the license

Once all this has been configured, the licenses have to be requested. To do it, run the following code from the directory where licmgr.jar is saved:
java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar -r ./lic.gxa 121

root@Test:/home/Test/gxprot# java -Dgxprotect.dir=license -jar ./licmgr.jar -r ./lic.gxa 121
Request, GXFlow Client Application 18
  • /gxprot/license is the licenses directory
  • lic.gxa is the file generated to request the licenses
  • 121 is the code of the product GXflow 
Send the .gxa file generated to your local key distributor. After receiving the keys, enter them by executing the following command line:
java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar -e ./keys.gxa


root@Test:/home/Test/gxprot# java -Dgxprotect.dir=license -jar ./licmgr.jar -e lic.gxa
Product     : GXFlow Client Application 18
Copies      : 3
Run Level   : Full
Restriction : 15 days

Install Licenses? (y/n): y

GXFlow Client Application 18 ... Ok
In the above line, it is assumed that the file containing the key is saved in the current directory and is called keys.gxa.


  • It is not necessary to nominate users manually, users are nominated automatically after adding a new user from GXflow Client web application.
  • Save and Load Users options generates an xml file, this file can be used in Windows License Manager too.
  • Once the license has been installed, you probably need to set files permissions again, otherwise the error 'Not Authorized' could still appear when Login. See Tip1 above in order to set those permissions.

Available Options

Display Licenses java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –d
Save Users java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –s 121 <filename>
Request Licenses java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –r <filename> 121
Enter Licenses java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –e <filename>
Uninstall Licenses (**) java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –u 121 <copies>
Nominate User java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –n 121 <user>
Uninstall User (*) java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –x 121 <user>
List Users java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –l 121
Load Users java -Dgxprotect.dir=/gxprot/license -jar ./licmgr.jar –o 121 <filename>


(*) This option allow to uninstall a particular user, then another user can be nominated without losing or uninstalling the license.
(**) After uninstalling licenses remember saving the Uninstall Code, this code must be sent by email to your local key distributor.

Note: If the License Manager is executed without sending an option, all the options available are displayed, as well as its version.


If you are having trouble with the configuration and even after having done all the steps described before, you could enable the protection log. When enabled all errors will be logged in the server's log.
To do so, add the following code to the web.xml:
Tip: in Tomcat errors will be logged in the "catalina.out" file.