Altova MapForce Server 2016 User and Reference Manual Altova MapForce Server 2016 User & Reference Manual All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the written permission of the publisher. Products that are referred to in this document may be either trademarks and/or registered trademarks of the respective owners. The publisher and the author make no claim to these trademarks. While every precaution has been taken in the preparation of this document, the publisher and the author assume no responsibility for errors or omissions, or for damages resulting from the use of information contained in this document or from the use of programs and source code that may accompany it. In no event shall the publisher and the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused directly or indirectly by this document. Published: 2016 © 2016 Altova GmbH Table of Contents 1 Altova MapForce Server 2016 3 1.1 ................................................................................................................................... How It Works 5 1.2 ................................................................................................................................... Setup on Windows 7 1.2.1 ..................................................................................................................... Installation on Windows 8 1.2.2 ..................................................................................................................... Licensing on Windows 10 1.3................................................................................................................................... Setup on Linux 13 1.3.1 ..................................................................................................................... Installation on Linux 14 1.3.2 ..................................................................................................................... Licensing on Linux 17 1.3.3 ..................................................................................................................... Notes about Environment 19 1.4................................................................................................................................... Setup on Mac OS X 20 1.4.1 ..................................................................................................................... Installation on Mac OS X 21 1.4.2 ..................................................................................................................... Licensing on Mac OS X 24 1.4.3 ..................................................................................................................... Notes about Environment 26 1.5................................................................................................................................... Command Line Usage 27 1.5.1 ..................................................................................................................... licenseserver 29 1.5.2 ..................................................................................................................... assignlicense (Windows only) 31 1.5.3 ..................................................................................................................... verifylicense (Windows only) 33 1.5.4 ..................................................................................................................... run 35 1.5.5 ..................................................................................................................... exportresourcestrings 38 1.5.6 ..................................................................................................................... setdeflang 40 1.5.7 ..................................................................................................................... help 42 1.6................................................................................................................................... MapForce Server API 44 1.6.1 ..................................................................................................................... About the .NET Interface 45 1.6.2 ..................................................................................................................... About the COM Interface 47 1.6.3 ..................................................................................................................... About the Java Interface 48 1.6.4 ..................................................................................................................... Code Examples 51 ........................................................................................................... 51 C# ........................................................................................................... 52 C++ ........................................................................................................... 53 Java ........................................................................................................... 54 VBScript ........................................................................................................... 55 Visual Basic ........................................................................................................... 56 Visual Basic for Applications (VBA) 1.6.5 ..................................................................................................................... API Reference (COM, .NET) 59 ........................................................................................................... 59 Interfaces ......................................................................................................................................... 59 IServer Interface Altova MapForce Server 2016 1 1.6.6 ..................................................................................................................... API Reference (Java) 65 ........................................................................................................... 65 Package com.altova.mapforceserver ......................................................................................................................................... 65 MapForceServer Class ......................................................................................................................................... 68 MapForceServerException Class 1.7................................................................................................................................... Altova LicenseServer 69 1.7.1 ..................................................................................................................... Network Information 71 1.7.2 ..................................................................................................................... Installation (Windows) 72 1.7.3 ..................................................................................................................... Installation (Linux) 74 1.7.4 ..................................................................................................................... Installation (Mac OS X) 76 1.7.5 ..................................................................................................................... Altova ServiceController 77 1.7.6 ..................................................................................................................... How to Assign Licenses 78 ........................................................................................................... 79 Start LicenseServer ........................................................................................................... 80 Open LicenseServer's Config Page (Windows) ........................................................................................................... 83 Open LicenseServer's Config Page (Linux) ........................................................................................................... 85 Open LicenseServer's Config Page (Mac OS X) ........................................................................................................... 87 Upload Licenses to LicenseServer ........................................................................................................... 90 Register Product/s ......................................................................................................................................... 90 Register FlowForce Server ......................................................................................................................................... 95 Register MapForce Server ......................................................................................................................................... 97 Register StyleVision Server ......................................................................................................................................... 99 Register RaptorXML(+XBRL) Server ......................................................................................................................................... 100 Register MobileTogether Server ........................................................................................................... 101 Assign Licenses to Registered Products 1.7.7..................................................................................................................... Configuration Page Reference 107 ........................................................................................................... 107 License Pool ........................................................................................................... 112 Server Management ........................................................................................................... 116 Server Monitoring ........................................................................................................... 116 Settings ........................................................................................................... 122 Messages, Log Out 1.7.8..................................................................................................................... Password Reset 123 1.8 ................................................................................................................................... Digital Certificate Management 124 1.8.1..................................................................................................................... Trusting Server Certificates on Linux 127 1.8.2..................................................................................................................... Trusting Server Certificates on Mac 130 1.8.3..................................................................................................................... Trusting Server Certificates on Windows 131 1.8.4..................................................................................................................... Accessing the Certificate Stores on Windows 134 1.8.5..................................................................................................................... Exporting Certificates from Windows 135 1.8.6..................................................................................................................... Client Certificates on Linux 141 1.8.7..................................................................................................................... Client Certificates on Mac 142 1.8.8..................................................................................................................... Client Certificates on Windows 143 Index 2 Altova MapForce Server 2016 Chapter 1 Altova MapForce Server 2016 Altova MapForce Server 2016 1 3 Altova MapForce Server 2016 MapForce Server is an enterprise software solution that runs data mapping transformations on Windows, Linux, and OS X operating systems. The data mappings themselves (or Mapping Design Files, *.mfd) are visually designed with Altova MapForce ( http://www.altova.com/ mapforce.html ), where you define the inputs, outputs, and any intermediary processing steps that must be applied to your data. The role of MapForce Server is to run MapForce Server Execution (.mfx) files compiled with MapForce, and to produce the output files or data, or even update databases or call Web services, according to the design of the underlying mapping. MapForce Server can run standalone as well as under the management of Altova FlowForce Server ( http://www.altova.com/flowforce.html ). When installed on the same machine as MapForce Server, FlowForce Server automates execution of mappings through scheduled or trigger-based jobs, which can also be exposed as Web services. In addition to this, FlowForce Server includes a built-in library of functions that enable you to take additional automated actions before or after mapping execution, such as sending email, copying files and directories, uploading files to FTP, running shell commands, and others. MapForce Server Features Server-level performance when executing data mappings Cross-platform: MapForce Server runs on Windows, Linux, or OS X operating systems Command line interface An API that you can call from C++, C#, Java, VB.NET, VBScript, or VBA code Native integration with FlowForce Server. Limitations XML digital signatures are not supported Altova Global Resources ( http://www.altova.com/global-resources.html ) are not supported by the API; this limitation does not apply to the command line interface. ODBC and ADO database connections are supported only on Windows systems. On other operating systems, JDBC should be used. System Requirements Windows Windows XP (SP2 for x64; SP3 for x86), Windows Vista, Windows 7, Windows 8, Windows 10 © 2016 Altova Gmb H Altova MapForce Server 2016 4 Altova MapForce Server 2016 Windows Server Windows Server 2008 R2 or newer On Windows, MapForce Server is available both as a 32-bit and 64-bit package. Linux CentOS 6 or newer RedHat 6 or newer Debian 6 or newer Ubuntu 12.04 or newer Note that the Libidn library, available under GNU LGPL, must be installed. Mac OS X Mac OS X 10.8 or newer Last updated: 19 April 2016 Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.1 How It Works 5 How It Works The role of MapForce Server is to execute data mappings created with Altova MapForce ( http:// www.altova.com/mapforce.html ). First, you design the data mappings (or Mapping Design Files, *.mfd) visually in MapForce, where you define the inputs, outputs, and any intermediary processing steps that must be applied to your data (including sorting, filtering, custom functions, and others). Once your mapping is ready, you can execute it with MapForce Server in one of the following ways: On the Windows machine where MapForce runs, compile the mapping to a MapForce Server Execution File (.mfx). The .mfx files can roughly be regarded as data mappings packaged for execution in a server environment. You can copy such files to any of the supported operating systems where MapForce Server runs (including across different platforms, see System Requirements). On the server machine, you can execute the .mfx file using the command line interface of MapForce Server, or using the MapForce Server API. On the Windows machine where MapForce runs, deploy the mapping to a server machine where both MapForce Server and FlowForce Server are installed. The server machine can be a different operating system (see System Requirements). Mappings deployed in this way become FlowForce Server functions and you can create scheduled or trigger-based jobs from them. When mappings run as FlowForce Server jobs, they can also be exposed as Web services, chained as sub-steps of other jobs, or made part of workflows which include sending emails, verifying exit codes, running shell commands, and others. © 2016 Altova Gmb H Altova MapForce Server 2016 6 Altova MapForce Server 2016 How It Works For more information about this scenario, see the FlowForce Server documentation ( http://manual.altova.com/FlowForceServer ). How to execute mappings compiled as MapForce Server Execution files 1. 2. 3. 4. Open in MapForce Enterprise or Professional the mapping to be compiled. On the File menu, click Compile to MapForce Server Execution file, and select a destination directory. Copy the .mfx file to the destination directory or server. Call the "run" command of the command line interface (see Command Line Usage ), or the equivalent method of the MapForce Server API (see MapForce Server API ). How to execute mappings deployed to FlowForce Server 1. 2. 3. 4. 5. 6. Open in MapForce Enterprise or Professional the mapping to be deployed. Make sure that the transformation language (execution engine) of the mapping is set to Built-in. To change the execution engine to Built-in, select the menu command Output | Built-In Execution Engine, or click the Select Built-In Execution Engine ( ) toolbar button . On the File menu, click Deploy to FlowForce Server. Enter the server connection details (host, port), the FlowForce credentials, and the destination FlowForce container. To proceed to creating the FlowForce job immediately in the browser, select the option Open web browser to create new job. You can also create the FlowForce job at a later time (see next step). Open a browser, log on to the FlowForce Server Web administration interface, and navigate to the container where you deployed the mapping (see previous step). This step is not required if you selected the option Open web browser to create new job in the previous step. Define the FlowForce Server job, including its triggers, parameters, or additional execution steps (for an example, see http://manual.altova.com/FlowForceServer/ fs_example_mapforce_mapping.htm ). Whenever the job is configured to run, the underlying mapping transformation will be executed, and the mapping output will be produced. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.2 Setup on Windows 7 Setup on Windows This section describes the installation and licensing of MapForce Server on Windows systems. Installation on Windows System requirements Installing MapForce Server Altova LicenseServer LicenseServer versions Trial license Application folder location Licensing on Windows Start ServiceController Start LicenseServer Register MapForce Server Assign a license © 2016 Altova Gmb H Altova MapForce Server 2016 8 Altova MapForce Server 2016 1.2.1 Installation on Windows Setup on Windows MapForce Server is available for installation on Windows systems. Its installation and setup procedure is described below. System requirements Windows Windows XP (SP2 for x64; SP3 for x86), Windows Vista, Windows 7, Windows 8, Windows 10 Windows Server Windows Server 2008 R2 or newer Installing MapForce Server MapForce Server can be installed on Windows systems as follows: As a separate standalone server product called MapForce Server. To install MapForce Server, download and run the MapForce Server installer. Follow the onscreen instructions. As part of the FlowForce Server installation package. To install MapForce Server as part of the FlowForce Server package, download and run the FlowForce Server installer. Follow the onscreen instructions and make sure you check the option for installing MapForce Server. The installers of both MapForce Server and FlowForce Server are available at the Altova website and will install the products with the necessary registrations. After installation, the MapForce Server executable will be located by default at: <ProgramFilesFolder>\Altova\MapForceServer2016\bin\MapForceServer.exe Altova LicenseServer In order for MapForce Server to work, it must be licensed via an Altova LicenseServer on your network. When you install MapForce Server or FlowForce Server on Windows systems, an option is available that allows you to download and install Altova LicenseServer together with MapForce Server or FlowForce Server. If an Altova LicenseServer is already installed on your network, you do not need to install another one—unless a newer version of Altova LicenseServer is required. (See next point, LicenseServer versions.) During the installation process of MapForce Server or FlowForce Server, check or uncheck the option for installing Altova LicenseServer as appropriate. See the section, Licensing on Windows, for more information about how to register and license MapForce Server with Altova LicenseServer. LicenseServer versions Altova server products must be licensed either with the version of LicenseServer that Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Setup on Windows 9 is appropriate to the installed MapForce Server version, or with a later version of LicenseServer. The LicenseServer version that is appropriate for a particular version of MapForce Server is displayed during the installation of MapForce Server. You can install this version of LicenseServer along with MapForce Server, or you can install LicenseServer separately. Before installing a newer version of LicenseServer, any older one must be deinstalled. The LicenseServer installer will do this automatically if it detects an older version. LicenseServer versions are backwards compatible. They will work with older versions of MapForce Server. If you install a new version of MapForce Server and if your installed LicenseServer version is older than the appropriate LicenseServer, install the latest version available on the Altova website. At the time of LicenseServer de-installation, all registration and licensing information held in the older version of LicenseServer will be saved to a database on your server machine. This data will be imported automatically into the newer version when the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 Trial license During the installation process, you will be given the option of requesting a 30-day trial license for MapForce Server. After submitting the request, a trial license will be sent to the email address you registered. Application folder location The application will be installed in the following folder: Windows XP C:\Program Files\Altova\ Windows Vista, Windows 7, 8, 10 C:\Program Files\Altova\ 32 bit Version on 64-bit OS © 2016 Altova Gmb H C:\Program Files (x86)\Altova\ Altova MapForce Server 2016 10 Altova MapForce Server 2016 1.2.2 Licensing on Windows Setup on Windows MapForce Server must be licensed with an Altova LicenseServer in order to run it. Licensing is a two-step process: 1. 2. Register MapForce Server with LicenseServer. Registration is done from MapForce Server. Assign a license to MapForce Server. License-assigning is done from LicenseServer. The steps you need to carry out are given below. Start ServiceController Altova ServiceController is started in order to start Altova LicenseServer. Altova ServiceController (ServiceController for short) is an application for conveniently starting, stopping and configuring Altova services on Windows systems. ServiceController is installed with Altova LicenseServer and with Altova server products that are installed as services (FlowForce Server, RaptorXML(+XBRL) Server, and Mobile Together Server). It can be started by clicking Start | Altova LicenseServer | Altova ServiceController. (This command is also available in the Start menu folders of Altova server products that are installed as services (FlowForce Server, RaptorXML(+XBRL) Server, and Mobile Together Server).) After ServiceController has been started, it can be accessed via the system tray (screenshot below). To specify that ServiceController starts automatically on logging in to the system, click the ServiceController icon in the system tray to display the ServiceController menu (screenshot below), and then toggle on the command Run Altova ServiceController at Startup. (This command is toggled on by default.) To exit ServiceController, click the ServiceController icon in the system tray and, in the menu that appears (see screenshot below), click Exit Altova ServiceController. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Setup on Windows 11 Start LicenseServer To start LicenseServer, click the ServiceController icon in the system tray, hover over Altova LicenseServer in the menu that pops up (see screenshot below), and then select Start Service from the LicenseServer submenu. If LicenseServer is already running, the Start Service option will be disabled. Register MapForce Server Register MapForce Server through FlowForce Server If MapForce Server was installed as part of a FlowForce Server installation, registering FlowForce Server with LicenseServer will automatically also register MapForce Server. How to register FlowForce Server is described in the FlowForce Server documentation. Essentially: (i) Start Altova FlowForce Web as a service via ServiceController (see previous point); (ii) Enter your password to access the Setup page; (iii) Select the LicenseServer name or address and click Register with LicenseServer. After successful registration, go to the Server Management tab of LicenseServer's configuration page to assign a license to MapForce Server. Register a standalone MapForce Server Register MapForce Server via: its CLI, using the licenseserver command: MapForceServer licenseserver [options] ServerName-Or-IP-Address For example, if localhost is the name of the server on which LicenseServer is installed: MapForceServer licenseserver localhost After successful registration, go to the Server Management tab of LicenseServer's configuration page to assign a license to MapForce Server. Assign a license © 2016 Altova Gmb H Altova MapForce Server 2016 12 Altova MapForce Server 2016 Setup on Windows After successfully registering MapForce Server, it will be listed in the Server Management tab of the configuration page of LicenseServer. Go there and assign a license to MapForce Server. Note on cores and licenses The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. Note: Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client devices) that are allowed to connect to the MobileTogether Server at one time. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.3 Setup on Linux 13 Setup on Linux This section describes the installation and licensing of MapForce Server on Linux systems (Debian, Ubuntu, CentOS, RedHat). Installation on Linux System requirements Uninstall old versions of Altova server products Download the Linux package Install MapForce Server Altova LicenseServer LicenseServer versions Trial license Licensing on Linux Start LicenseServer Register MapForce Server Assign a license Notes about Environment © 2016 Altova Gmb H Altova MapForce Server 2016 14 Altova MapForce Server 2016 1.3.1 Installation on Linux Setup on Linux MapForce Server is available for installation on Linux systems. Its installation and setup procedure is described below. System requirements Linux CentOS 6 or newer RedHat 6 or newer Debian 6 or newer Ubuntu 12.04 or newer Note that the Libidn library, available under GNU LGPL, must be installed. FlowForce Server integration If you are installing MapForce Server together with FlowForce Server, it is recommended that you install FlowForce Server first. Otherwise, after having installed both MapForce Server and FlowForce Server, run the following command: cp /opt/Altova/MapForceServer2016/etc/*.tool /opt/Altova/ FlowForceServer2016/tools This command copies the .tool file from /etc directory of MapForce Server to the FlowForce Server /tools directory. The .tool file is required by FlowForce Server; it contains the path to the MapForce Server executable. You do not need to run this command if you install FlowForce Server before installing MapForce Server. Uninstall old versions of Altova server products If you need to uninstall a previous version, do this as follows. On the Linux command line interface (CLI), you can check which Altova server products are installed with the following command: [Debian, Ubuntu]: [CentOS, RedHat]: dpkg --list | grep Altova rpm -qa | grep server If MapForce Server is not installed, go ahead with the installation as documented below in Installing MapForce Server. If MapForce Server is installed and you wish to install a newer version of MapForce Server, uninstall the old version with the command: [Debian, Ubuntu]: [CentOS, RedHat]: sudo dpkg --remove mapforceserver sudo rpm -e mapforceserver If you need to uninstall an old version of Altova LicenseServer, do this with the following command: [Debian, Ubuntu]: [CentOS, RedHat]: Altova MapForce Server 2016 sudo dpkg --remove licenseserver sudo rpm -e licenseserver © 2016 Altova Gmb H Altova MapForce Server 2016 Setup on Linux 15 Download the Linux package MapForce Server installation packages for the following Linux systems are available at the Altova website. Distribution Package extension Debian 6 and higher .deb Ubuntu12.04 and higher .deb CentOS 6 and higher .rpm RedHat 6 and higher .rpm After downloading the Linux package, copy it to any directory on the Linux system. Since you will need an Altova LicenseServer in order to run MapForce Server, you may want to download LicenseServer from the Altova website at the same time as you download MapForce Server, rather than download it at a later time. Install MapForce Server In a terminal window, switch to the directory where you have copied the Linux package. For example, if you copied it to a user directory called MyAltova (that is located, say, in the / home/User directory), then switch to this directory as follows: cd /home/User/MyAltova Install MapForce Server with the following command: [Debian]: [Ubuntu]: [CentOS]: [RedHat]: sudo sudo sudo sudo dpkg --install mapforceserver-2016-debian.deb dpkg --install mapforceserver-2016-ubuntu.deb rpm -ivh mapforceserver-2016-1.x86_64.rpm rpm -ivh mapforceserver-2016-1.x86_64.rpm The MapForce Server package will be installed in the folder: /opt/Altova/MapForceServer2016 Altova LicenseServer In order for any Altova Server product—including MapForce Server—to run, that server product must be licensed via an Altova LicenseServer on your network. On Linux systems, Altova LicenseServer will need to be installed separately. Download LicenseServer from the Altova website and copy the package to any directory on the Linux system. Install it just like you installed MapForce Server (see previous step). [Debian]: [Ubuntu]: [CentOS]: [RedHat]: © 2016 Altova Gmb H sudo sudo sudo sudo dpkg --install licenseserver-1.27-debian.deb dpkg --install licenseserver-1.27-ubuntu.deb rpm -ivh licenseserver-1.27-1.x86_64.rpm rpm -ivh licenseserver-1.27-1.x86_64.rpm Altova MapForce Server 2016 16 Altova MapForce Server 2016 Setup on Linux The LicenseServer package will be installed in: /opt/Altova/LicenseServer For information about how to register MapForce Server with Altova LicenseServer and license it, see the section, Licensing on Linux. LicenseServer versions Altova server products must be licensed either with the version of LicenseServer that is appropriate to the installed MapForce Server version, or with a later version of LicenseServer. The LicenseServer version that is appropriate for a particular version of MapForce Server is displayed during the installation of MapForce Server. You can install this version of LicenseServer along with MapForce Server, or you can install LicenseServer separately. Before installing a newer version of LicenseServer, any older one must be deinstalled. The LicenseServer installer will do this automatically if it detects an older version. LicenseServer versions are backwards compatible. They will work with older versions of MapForce Server. If you install a new version of MapForce Server and if your installed LicenseServer version is older than the appropriate LicenseServer, install the latest version available on the Altova website. At the time of LicenseServer de-installation, all registration and licensing information held in the older version of LicenseServer will be saved to a database on your server machine. This data will be imported automatically into the newer version when the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 Trial license During the installation process, you will be given the option of requesting a 30-day trial license for MapForce Server. After submitting the request, a trial license will be sent to the email address you registered. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.3.2 Setup on Linux 17 Licensing on Linux MapForce Server must be licensed with an Altova LicenseServer in order to run it. Licensing is a two-step process: 1. 2. Register MapForce Server with LicenseServer. Registration is done from MapForce Server. Assign a license to MapForce Server. License-assigning is done from LicenseServer. The steps you need to carry out are given below. Start LicenseServer To correctly register and license MapForce Server with LicenseServer, LicenseServer must be running as a daemon on the network. Start LicenseServer as a daemon with the following command: [Debian 6,7]: [Debian 8]: [Ubuntu <=14]: [Ubuntu 15]: [CentOS 6]: [CentOS 7]: [RedHat]: sudo sudo sudo sudo sudo sudo sudo /etc/init.d/licenseserver start systemctl start licenseserver initctl start licenseserver systemctl start licenseserver initctl start licenseserver systemctl start licenseserver initctl start licenseserver If at any time you need to stop LicenseServer, replace start with stop in the above commands. For example: sudo /etc/init.d/licenseserver stop Register MapForce Server Register MapForce Server via: its CLI, using the licenseserver command: sudo /opt/Altova/MapForceServer2016/bin/mapforceserver licenseserver [options] ServerName-Or-IP-Address For example, if localhost is the name of the server on which LicenseServer is installed: sudo /opt/Altova/MapForceServer2016/bin/mapforceserver licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the MapForce Server executable is: /opt/Altova/MapForceServer2016/bin/ After successful registration, go to the Server Management tab of LicenseServer's configuration page to assign a license to MapForce Server. © 2016 Altova Gmb H Altova MapForce Server 2016 18 Altova MapForce Server 2016 Setup on Linux Assign a license After successfully registering MapForce Server, it will be listed in the Server Management tab of the configuration page of LicenseServer. Go there and assign a license to MapForce Server. Note on cores and licenses The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. Note: Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client devices) that are allowed to connect to the MobileTogether Server at one time. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.3.3 Setup on Linux 19 Notes about Environment Folders Given below is a list of important folders in your MapForce Server setup. Installation root /opt/Altova/MapForceServer2016/ License Files /var/opt/Altova/MapForceServer Environment settings /etc/profile.d/jdbc.sh The environment settings file must be defined according to your specific environment. The example path above serves only as a general guide. Note: The environment settings file sets the variables for all users on the system. JDBC-Connections Note the following points: The Java Runtime Environment or SDK must be installed. The JDBC drivers for the target database must be installed. The following environment variables must be set correctly for your environment: o CLASSPATH: to find the jar-files o PATH: to find the JRE, but might not be necessary depending on the installation o JAVA_HOME: if necessary, depending on the installation. Note On Linux servers, the only database connections supported are JDBC. © 2016 Altova Gmb H Altova MapForce Server 2016 20 Altova MapForce Server 2016 1.4 Setup on Mac OS X Setup on Mac OS X This section describes the installation and licensing of MapForce Server on Mac OS X systems. Installation on Mac OS X System requirements Uninstall old versions of Altova server products Download the Mac OS X package Install MapForce Server Altova LicenseServer LicenseServer versions Trial license Licensing on Mac OS X Start LicenseServer Register MapForce Server Assign a license Notes about Environment Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.4.1 Setup on Mac OS X 21 Installation on Mac OS X MapForce Server is available for installation on Mac OS X systems. Its installation and setup procedure is described below. System requirements Mac OS X Mac OS X 10.8 or newer FlowForce Server integration If you install MapForce Server together with FlowForce Server, it is recommended that you install FlowForce Server first. If you install MapForce Server before FlowForce Server, then, after having installed both MapForce Server and FlowForce Server, run the following command: cp /usr/local/Altova/MapForceServer2016/etc/*.tool /usr/local/Altova/ FlowForceServer2016/tools This command copies the .tool file from /etc directory of MapForce Server to the FlowForce Server /tools directory. The .tool file is required by FlowForce Server; it contains the path to the MapForce Server executable. You do not need to run this command if you install FlowForce Server before installing MapForce Server. Uninstall old versions of Altova server products In the Applications folder in Finder, right-click the MapForce Server icon and select Move to Trash. The application will be moved to Trash. You will, however, still need to remove the application from the usr folder. Do this with the command: sudo rm -rf /usr/local/Altova/MapForceServer2016/ If you need to uninstall an old version of Altova LicenseServer, you must first stop it running as a service. Do this with the following command: sudo launchctl unload /Library/LaunchDaemons/ com.altova.LicenseServer.plist To check whether the service has been stopped, open the Activity Monitor in Finder and make sure that LicenseServer is not in the list. Then proceed to uninstall in the same way as described above for MapForce Server. Download the disk image file Download the disk image (.dmg) file from the Altova website (http://www.altova.com/ download.html). Install MapForce Server Click to open the downloaded disk image (.dmg). This causes the MapForce Server installer © 2016 Altova Gmb H Altova MapForce Server 2016 22 Altova MapForce Server 2016 Setup on Mac OS X to appear as a new virtual drive on your computer. On the new virtual drive, double-click the installer package (.pkg). Go through the successive steps of the installer wizard. These are self-explanatory and include one step in which you have to agree to the license agreement before being able to proceed. To eject the drive after installation, right-click it and select Eject. The MapForce Server package will be installed in the folder: /usr/local/Altova/MapForceServer2016 (application binaries) /var/Altova/MapForceServer (data files: database and logs) MapForce Server server daemon starts automatically after installation and a re-boot of the machine. You can start MapForce Server as a daemon with the following command: sudo launchctl load /Library/LaunchDaemons/ com.altova.MapForceServer2016.plist Altova LicenseServer In order for any Altova Server product—including MapForce Server—to run, that server product must be licensed via an Altova LicenseServer on your network. The Altova LicenseServer installation package is available on the virtual drive you have mounted in the previous step. To install Altova LicenseServer, double-click the installer package included on the virtual drive and follow the on-screen instructions. You will need to accept the license agreement for installation to proceed. Altova LicenseServer can also be downloaded and installed separately from the Altova website (http://www.altova.com/download.html). The LicenseServer package will be installed in the folder: /usr/local/Altova/LicenseServer For information about how to register MapForce Server with Altova LicenseServer and license it, see the section, Licensing on Mac OS X. LicenseServer versions Altova server products must be licensed either with the version of LicenseServer that is appropriate to the installed MapForce Server version, or with a later version of LicenseServer. The LicenseServer version that is appropriate for a particular version of MapForce Server is displayed during the installation of MapForce Server. You can install this version of LicenseServer along with MapForce Server, or you can install LicenseServer separately. Before installing a newer version of LicenseServer, any older one must be deinstalled. The LicenseServer installer will do this automatically if it detects an older version. LicenseServer versions are backwards compatible. They will work with older versions of MapForce Server. If you install a new version of MapForce Server and if your installed LicenseServer version is older than the appropriate LicenseServer, install the latest version available on the Altova website. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Setup on Mac OS X 23 At the time of LicenseServer de-installation, all registration and licensing information held in the older version of LicenseServer will be saved to a database on your server machine. This data will be imported automatically into the newer version when the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 Trial license During the installation process, you will be given the option of requesting a 30-day trial license for MapForce Server. After submitting the request, a trial license will be sent to the email address you registered. © 2016 Altova Gmb H Altova MapForce Server 2016 24 Altova MapForce Server 2016 1.4.2 Licensing on Mac OS X Setup on Mac OS X MapForce Server must be licensed with an Altova LicenseServer in order to run it. Licensing is a two-step process: 1. 2. Register MapForce Server with LicenseServer. Registration is done from MapForce Server. Assign a license to MapForce Server. License-assigning is done from LicenseServer. The steps you need to carry out are given below. Start LicenseServer To correctly register and license MapForce Server with LicenseServer, LicenseServer must be running as a daemon. Start LicenseServer as a daemon with the following command: sudo launchctl load /Library/LaunchDaemons/com.altova.LicenseServer.plist If at any time you need to stop LicenseServer, replace load with unload in the above command: sudo launchctl unload /Library/LaunchDaemons/ com.altova.LicenseServer.plist Register MapForce Server Register MapForce Server via: its CLI, using the licenseserver command: sudo /usr/local/Altova/MapForceServer2016/bin/MapForceServer licenseserver [options] ServerName-Or-IP-Address For example, if localhost is the name of the server on which LicenseServer is installed: sudo /usr/local/Altova/MapForceServer2016/bin/MapForceServer licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the MapForce Server executable is: /usr/local/Altova/MapForceServer2016/bin/ After successful registration, go to the Server Management tab of LicenseServer's configuration page to assign a license to MapForce Server. Assign a license After successfully registering MapForce Server, it will be listed in the Server Management tab of the configuration page of LicenseServer. Go there and assign a license to MapForce Server. Note on cores and licenses Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Setup on Mac OS X 25 The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. Note: Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client devices) that are allowed to connect to the MobileTogether Server at one time. © 2016 Altova Gmb H Altova MapForce Server 2016 26 Altova MapForce Server 2016 1.4.3 Notes about Environment Setup on Mac OS X Folders Given below is a list of important folders in your MapForce Server setup. Installation root /usr/local/Altova/MapForceServer2016/ License Files /var/Altova/MapForceServer Environment settings /Library/LaunchDaemons/com.altova.MobileTogetherServer.plist The environment settings file must be defined according to your specific environment. The example path above serves only as a general guide. Note: These environment variables are only set for the MapForce Server process and do not have an impact on other users. JDBC-Connections Note the following points: The Java Runtime Environment or SDK must be installed. The JDBC-Connects for the target database must be installed. The following environment variables must be set correctly for your environment: o CLASSPATH: to find the jar-files o PATH: to find the JRE, but might not be necessary depending on the installation o JAVA_HOME: if necessary, depending on the installation Note On Mac OS X servers, the only database connections supported are JDBC. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.5 Command Line Usage 27 Command Line Usage This section: Default location of MapForce Server executable Usage and list of CLI commands Default location of MapForce Server executable Given below are the default locations of the MapForce Server executable: Windows <ProgramFilesFolder>\Altova\MapForceServer2016\bin \MapForceServer.exe Linux \opt\Altova\MapForceServer2016\bin\mapforceserver Mac \usr\local\Altova\MapForceServer2016\bin\mapforceserver Usage and list of CLI commands General command line syntax for MapForceServer is: Windows MapForceServer --h | --help | --version | <command> [options] [arguments] Linux mapforceserver --h | --help | --version | <command> [options] [arguments] Mac mapforceserver --h | --help | --version | <command> [options] [arguments] Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. where --h | --help Displays the help text. --version Displays the version of MapForce Server. © 2016 Altova Gmb H Altova MapForce Server 2016 28 Altova MapForce Server 2016 Command Line Usage Valid CLI commands are listed below and are explained in the sub-sections of this section. licenseserver Register MapForce Server with LicenseServer on the local network. assignlicense Upload a license to LicenseServer and assign it to MapForce Server on this machine. verifylicense Check if the current MapForce Server is licensed; optionally, check if a given license key is assigned. run Executes a MapForce Server Execution file (.mfx) exportresourcestrings Exports all application resource strings to an XML file. setdeflang | sdl Sets the default language. help Displays help for a specific command. For example: help run Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.5.1 Command Line Usage 29 licenseserver This section: Command syntax Command description Examples Command options Command syntax Windows MapForceServer licenseserver [options] Server-Or-IP-Address Linux mapforceserver licenseserver [options] Server-Or-IP-Address Mac mapforceserver licenseserver [options] Server-Or-IP-Address Command description On execution, the licenseserver command registers MapForce Server with the LicenseServer specified by the Server-Or-IP-Address argument. Server-Or-IP-Address identifies the machine on the network on which Altova LicenseServer is installed and running. It can be the machine's name or its IP address. For the licenseserver command to be executed successfully, the two servers must be connected on the network and LicenseServer must be running. You must have administrator privileges to be able to register MapForce Server with LicenseServer. Once MapForce Server has been successfully registered with LicenseServer, you will receive a message to this effect. The message will also display the URL of the LicenseServer. You can now go to LicenseServer to assign MapForce Server a license. For details, see the LicenseServer documentation. Examples Examples of the licenseserver command: mapforceserver licenseserver DOC.altova.com mapforceserver licenseserver localhost mapforceserver licenseserver 127.0.0.1 The commands above specifiy, respectively, the machine named DOC.altova.com, and the user's machine (localhost and 127.0.0.1) as the machine running Altova LicenseServer. In each case, © 2016 Altova Gmb H Altova MapForce Server 2016 30 Altova MapForce Server 2016 Command Line Usage the command registers MapForce Server with the LicenseServer on the machine specified. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Command options Options are listed in their short forms (in the first column) and long forms (second column), together with their descriptions (third column). On the command line, one or two dashes can be used for both short and long forms. --j --json Altova MapForce Server 2016 Prints the result of the registration attempt as a machine-parsable JSON object. Form: --json=true|false © 2016 Altova Gmb H Altova MapForce Server 2016 1.5.2 Command Line Usage 31 assignlicense (Windows only) This section: Command syntax Command description Examples Command options Command syntax Windows Note: MapForceServer assignlicense [options] FILE This command is supported only on Windows systems. It is not supported on Linux or Mac systems. Command description On execution, the assignlicense command uploads the license file specified by the FILE argument to the registered LicenseServer, and assigns the license to MapForce Server on this machine. The FILE argument takes the filepath of the license file. The --test-only option allows you to upload to LicenseServer and validate the license, without assigning the license to MapForce Server. For details about licensing, see the LicenseServer documentation. Examples Examples of the assignlicense command: mapforceserver assignlicense C:\MapForce Server12345.altova_licenses mapforceserver assignlicense --test-only=true C:\MapForce Server12345.altova_licenses The first command above uploads the specified license to LicenseServer and assigns it to MapForce Server. The second command uploads the specified license to LicenseServer and validates it, without assigning it to MapForce Server. Casing on the command line MapForceServer on Windows © 2016 Altova Gmb H Altova MapForce Server 2016 32 Altova MapForce Server 2016 Command Line Usage mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Command options Options are listed in their short forms (in the first column) and long forms (second column), together with their descriptions (third column). On the command line, one or two dashes can be used for both short and long forms. --t --test-only Altova MapForce Server 2016 Values are true|false. If true, then the license file is only uploaded to LicenseServer and validated. It is not assigned to MapForce Server. Form: --test-only=true|false. Set to true if the option is specified without a value. © 2016 Altova Gmb H Altova MapForce Server 2016 1.5.3 Command Line Usage 33 verifylicense (Windows only) This section: Command syntax Command description Examples Command options Command syntax Windows Note: MapForceServer verifylicense [options] This command is supported only on Windows systems. It is not supported on Linux or Mac systems. Command description Checks whether the current product is licensed. Additionally, the --license-key option enables you to check whether a specific license key is already assigned to the product. For details about licensing, see the LicenseServer documentation. Examples Examples of the verifylicense command: mapforceserver verifylicense mapforceserver verifylicense --license-key=ABCDEFG-HIJKLMN-OPQRSTU-VWXYZ123456789 The commands above check, respectively, whether the product has been licensed, and whether the product has been licensed with the license key given as the value of the --license-key option. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. © 2016 Altova Gmb H Altova MapForce Server 2016 34 Altova MapForce Server 2016 Command Line Usage Command options Options are listed in their short forms (in the first column) and long forms (second column), together with their descriptions (third column). On the command line, one or two dashes can be used for both short and long forms. --l --license-key Altova MapForce Server 2016 Checks whether the submitted license key has already been assigned to the product. Form: --license-key=VALUE © 2016 Altova Gmb H Altova MapForce Server 2016 1.5.4 Command Line Usage 35 run This section: Command syntax Command description Examples Command options Command syntax Windows MapForceServer run [options] MfxFile Linux mapforceserver run [options] MfxFile Mac mapforceserver run [options] MfxFile Command description The run command executes a MapForce Server execution file (.mfx file). It requires an input .mfx file (MfxFile) as its argument. Using stream redirection at the command line If the mapping uses an output component to return a simple value such as string, this output is written in the stdout (standard output) stream. On the other hand, the success and error messages are available in the stderr (standard error) stream. If you do not want the standard output stream to be displayed on the screen together with the success or error messages, redirect either the standard output or the standard error stream (or both) to files. If neither the stdout nor the stderr streams are redirected, they are both displayed on the screen, combined. For example, to redirect the standard output stream to a file, use: mapforceserver run MyMapping.mfx > MyOutput.txt To redirect the standard error stream to a file, use: mapforceserver run MyMapping.mfx 2> Diagnostics.log To redirect both streams simultaneously, use: mapforceserver run MyMapping.mfx > MyOutput.txt 2> Diagnostics.log For further information about stream redirection, refer to the documentation of your operating © 2016 Altova Gmb H Altova MapForce Server 2016 36 Altova MapForce Server 2016 Command Line Usage system's command shell. Examples In Altova MapForce, open a MapForce Design file (.mfd file) from the MapForce Examples folder and compile it to a MapForce Execution file (.mfx file) with the MapForce command File | Compile to MapForce Server Execution File. For the scope of this example, let's assume you selected the file ChainedPersonList.mfd and saved it to C:\temp\ChainedPersonList.mfx. Now, in MapForce Server, you can use the run command to execute ChainedPersonList.mfx: mapforceserver run C:\temp\ChainedPersonList.mfx The two output files of this MapForce Design file (PersonList.xml and Contacts.xml) are generated in the MapForce Examples folder. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Command options Options are listed in their short forms (in the first column) and long forms (second column), together with their descriptions (third column). On the command line, one or two dashes can be used for both short and long forms. For information about global resources and input parameters, see the Altova MapForce documentation. --cert --catalog Specifies the absolute path to a root catalog file that is not the installed root catalog file. The default value is the absolute path to the installed root catalog file. Form: --catalog=FILE --certificatespath This command is applicable to MapForce Server running on Linux. It specifies the path to the directory where any certificate files required by the mapping are stored. Form: --certificatespath=DIRECTORY Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Command Line Usage 37 See also Digital Certificate Management. --gc --globalresourceconfig The name of the global resource configuration. Form: --gc=VALUE --gr --globalresourcefile The path of the global resource definition file. Form: --gr=FILE. --l --lang The language used for displaying messages. Form: --lang=VALUE (en,de,ja,es) --p --param Assigns a value to a parameter defined in the mapping. Form: --param=ParamName:ParamValue. The --param switch must be used before each parameter. Use quotes if ParamName or ParamValue contains a space. For example: -p=company:"Nanonull Inc". Note: On Windows systems: Avoid using the end backslash and closing quote on the command line \", for example, as in: "C:\My directory\". These two characters are interpreted by the command line parser as a literal double-quotation mark. Use the double backslash \\ if spaces occur in the command line and you need the quotes (for example: "C:\My Directory\\"). Alternatively, try to avoid using spaces and, therefore, quotes at all. © 2016 Altova Gmb H Altova MapForce Server 2016 38 Altova MapForce Server 2016 1.5.5 exportresourcestrings Command Line Usage This section: Command syntax Arguments Command description Examples Creating localized versions of MapForce Server Command syntax Windows MapForceServer exportresourcestrings LanguageCode XMLOutputFile Linux mapforceserver exportresourcestrings LanguageCode XMLOutputFile Mac mapforceserver exportresourcestrings LanguageCode XMLOutputFile Arguments The exportresourcestrings command takes the following arguments: LanguageCode Specifies the language of resource strings in the exported XML file. Supported languages are: en, de, es, ja XMLOutputFile Specifies the location and name of the exported XML file. Command description The exportresourcestrings command outputs an XML file containing the resource strings of the MapForce Server application. It takes two arguments: (i) the language of the resource strings in the output XML file, and (ii) the path and name of the output XML file. Allowed export languages (with their language codes in parentheses) are: English (en), German, (de), Spanish (es), and Japanese (ja). Examples An example of the exportresourcestrings command: mapforceserver exportresourcestrings de c:\Strings.xml Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Command Line Usage 39 This command creates a file called Strings.xml at c:\ that contains all the resource strings of the MapForce Server application in German. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Creating localized versions of MapForce Server You can create a localized version of MapForce Server for any language of your choice. Four localized versions (English, German, Spanish, and Japanese) are already available in the C: \Program Files (x86)\Altova\MapForceServer2016\bin folder, and therefore do not need to be created. Create a localized version as follows: 1. 2. 3. 4. 5. Note: Generate an XML file containing the resource strings by using the exportresourcestrings command (see command syntax above). The resource strings in this XML file will be one of the five supported languages: English (en), German (de), Spanish (es), or Japanese (ja), according to the LanguageCode argument used with the command. Translate the resource strings from one of the four supported languages into the target language. The resource strings are the contents of the <string> elements in the XML file. Do not translate variables in curly brackets, such as {option} or {product}. Contact Altova Support to generate a localized MapForce Server DLL file from your translated XML file. After you receive your localized DLL file from Altova Support, save the DLL in the C: \Program Files (x86)\Altova\<%APPFOLDER\bin folder. Your DLL file will have a name of the form MapForceServer2016_lc.dll. The _lc part of the name contains the language code. For example, in MapForceServer2016_de.dll, the de part is the language code for German (Deutsch). Run the setdeflang command to set your localized DLL file as the MapForce Server application to use. For the argument of the setdeflang command, use the language code that is part of the DLL name. Altova MapForce Server is delivered with support for four languages: English, German, Spanish, and Japanese. So you do not need to create a localized version of these languages. To set any of these languages as the default language, use MapForce Server's setdeflang command. © 2016 Altova Gmb H Altova MapForce Server 2016 40 Altova MapForce Server 2016 1.5.6 setdeflang Command Line Usage This section: Command syntax Command description Examples Supported languages Command syntax Windows MapForceServer setdeflang | sdl LangaugeCode Linux mapforceserver setdeflang | sdl LangaugeCode Mac mapforceserver setdeflang | sdl LangaugeCode Command description The setdeflang command (short form is sdl) sets the default language of MapForce Server. It takes a mandatory LanguageCode argument. Examples An example of the setdeflang command: mapforceserver setdeflang DE The command above sets the default language for messages to German. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Supported languages Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Command Line Usage 41 The table below lists the languages currently supported together with their language codes. EN English DE German ES Spanish FR French JA Japanese © 2016 Altova Gmb H Altova MapForce Server 2016 42 Altova MapForce Server 2016 1.5.7 help Command Line Usage This section: Command syntax Command description Examples The --help option Command syntax Windows MapForceServer help Command Linux mapforceserver help Command Mac mapforceserver help Command Command description The help command takes a single argument (Command): the name of the command for which help is required. It displays the correct syntax of the command and other information relevant to the correct execution of the command. Examples An example of the help command: mapforceserver help exportresourcestrings The command above contains one argument: the command exportresourcestrings, for which help is required. When the example command above is executed, information about the exportresourcestrings command will be displayed in the terminal. Casing on the command line MapForceServer on Windows mapforceserver on Unix (Linux, Mac) * Note that lowercase (mapforceserver) works on all platforms (Windows, Linux, and Mac), while upper-lower (MapForceServer) works only on Windows and Mac. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Command Line Usage 43 The --help option Help information about a command is also available by using the --help option with the command for which help information is required. For example, using the --help option with the exportresourcestrings command, as follows: mapforceserver exportresourcestrings --help achieves the same result as does using the help command with an argument of exportresourcestrings: mapforceserver help exportresourcestrings In both cases, help information about the exportresourcestrings command is displayed. © 2016 Altova Gmb H Altova MapForce Server 2016 44 Altova MapForce Server 2016 1.6 MapForce Server API MapForce Server API MapForce Server provides an application programming interface (API) that you can access programmatically from your .NET, Java, or COM-based code. For an introduction to each platform, refer to the following topics: About the .NET Interface About the COM Interface About the Java Interface For code examples, refer to the Code Examples section. For a technical description of the API, refer to the following topics: API Reference (COM, .NET) API Reference (Java) Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.6.1 MapForce Server API 45 About the .NET Interface The .NET interface is built as a wrapper around the COM interface. It is provided as a primary interop assembly signed by Altova and uses the namespace Altova.MapForceServer. During installation, MapForce Server will be registered automatically as a COM server object, so there is no need for a manual registration. If you receive an access error, open the Component Services and give permissions to the same account that runs the application pool containing MapForce Server. In order to use MapForce Server in your .NET project, add a reference to the Altova.MapForceServer.dll file (see the instructions below). The Altova.MapForceServer.dll is located in the bin folder of the MapForce Server installation folder. This .dll file is automatically added to the global assembly cache (GAC) during MapForce Server installation (the GAC is typically located in the C:\WINDOWS\assembly folder). Once MapForce Server has been registered as a COM server object, and the Altova.MapForceServer.dll is available to the .NET interface, the MapForce API functionality becomes available in your .NET project. To add a reference to the MapForce Server DLL in a Visual Studio .NET project: 1. With the .NET project open in Visual Studio, click Project | Add Reference. The Add Reference dialog box pops up. 2. On the Browse tab, browse for the folder: <MapForceServer application folder>/bin, select the Altova.MapForceServer.dll, and click OK. © 2016 Altova Gmb H Altova MapForce Server 2016 46 Altova MapForce Server 2016 MapForce Server API You can view the structure of the Altova.MapForceServer assembly using the Visual Studio Object Browser (to display the Object Browser, click Object Browser on the View menu). Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.6.2 MapForce Server API 47 About the COM Interface MapForce Server is automatically registered as a COM server object during installation. To check whether the registration was successful, open the Registry Editor (for example, by typing regedit.exe command at the command line). If registration was successful, the Registry will contain the classes MapForce.Server. These two classes will typically be found under HKEY_LOCAL_MACHINE\SOFTWARE\Classes. Once the COM server object is registered, you can invoke it from within applications and scripting languages that have programming support for COM calls. If you wish to change the location of the MapForce Server installation package, it is best to uninstall MapForce Server and then reinstall it at the required location. In this way, the necessary de-registration and registration are carried out by the installer process. © 2016 Altova Gmb H Altova MapForce Server 2016 48 Altova MapForce Server 2016 1.6.3 About the Java Interface MapForce Server API To access the MapForce Server API from Java code, the following references must be added to the .classpath file of your Java project. MapForceServer.jar The library that communicates with MapForce Server. MapForceServer_JavaDoc.zip A Javadoc archive file containing documentation for the Java MapForce Server API. Both files are available in the bin folder of the MapForce Server installation folder. You can either reference the file from their original location or copy them to another location if this fits your project setup. In Eclipse, you can add the classpath references by editing the properties of the Java project, as shown in the sample instructions below (notice the instructions apply to Eclipse 4.4). To add the MapForce Server library references in Eclipse: 1. 2. With the project open in Eclipse, on the Project menu, click Properties. On the Libraries tab, click Add External JARs, and then browse for the MapForceServer.jar file located in the MapForce Server installation folder. 3. Under JARs and class folders on the build path, expand the MapForceServer.jar record, and then double click on the Javadoc location: (None) record. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 4. Ensure that the Javadoc in archive and External file options are selected, and then browse for the MapForceServer_JavaDoc.zip file located in the MapForce Server installation folder. 5. Click OK. The reference to the MapForce Server library and Javadoc archive has now been added to the .classpath file of the project. 49 Below is an example of how the .classpath file might look if you are referencing the files from the original installation folder, on a 64-bit operating system running 32-bit MapForce © 2016 Altova Gmb H Altova MapForce Server 2016 50 Altova MapForce Server 2016 MapForce Server API Server (the relevant lines are highlighted in yellow): <?xml version="1.0" encoding="UTF-8"?> <classpath> <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/ org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre7"/> <classpathentry kind="lib" path="C:/Program Files (x86)/Altova/ MapForceServer2016/bin/MapForceServer.jar"> <attributes> <attribute name="javadoc_location" value="jar:file:/C:/Program%20Files%20(x86)/Altova/MapForceServer2016/ bin/MapForceServer_JavaDoc.zip!/"/> </attributes> </classpathentry> <classpathentry kind="output" path="bin"/> </classpath> Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.6.4 MapForce Server API 51 Code Examples This section includes sample code which illustrates how to run a MapForce mapping programmatically. Samples are included for the following languages: C# C++ Java VBScript Visual Basic Visual Basic for Applications (VBA) C# The following example illustrates how to run a mapping execution file (.mfx) from C# code. Before testing this example, ensure the following prerequisites are met: MapForce Server is installed and licensed A reference to the MapForce Server DLL has been added in your Visual Studio project (see About the .NET Interface). namespace MapForceServerAPI_sample { class Program { static void Main(string[] args) { //Create a MapForce Server object Altova.MapForceServer.Server objMFS = new Altova.MapForceServer.Server(); //Set a working directory used as a base for relative paths objMFS.WorkingDirectory = "c:\\temp"; //Default path to the MapForce Server executable is the installation path (same dir as the MapForceServer.dll) //If you moved the binaries on the disk, you need to explicitly set the path to the .exe file //objMFS.ServerPath = "C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\bin\\MapForceServer.exe"; //Prepare the parameters, if your mapping uses parameters //objMFS.AddParameter( "testparam1", "value 1" ); //Run the mapping; input and output paths are stored inside the MFX file // NOTE Please adapt the path to the input file in order to run the sample if (objMFS.Run("C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\etc\\Examples\\CompletePO.mfx")) System.Console.WriteLine("Success - finished execution"); else System.Console.WriteLine(objMFS.LastExecutionMessage); © 2016 Altova Gmb H Altova MapForce Server 2016 52 Altova MapForce Server 2016 MapForce Server API } } } C++ The following example illustrates how to run a mapping execution file (.mfx) from C++ code. Before testing this example, ensure the following prerequisites are met: MapForce Server is installed and licensed MapForce Server is available as a COM server object (normally, this process takes place automatically during MapForce Server installation; to check if registration was successful, see About the COM Interface). // MapForceServerAPI_sample.cpp : Defines the entry point for the console application. // #include <iostream> #include "atlbase.h" // 32-bit MapForce Server #import "progid:MapForce.Server" // 64-bit MapForce Server //#import "progid:MapForce_x64.Server" int _tmain(int argc, _TCHAR* argv[]) { CoInitialize( NULL ); try { //Create a MapForce Server object MapForceServerLib::IServerPtr pMFS; CoCreateInstance( __uuidof( MapForceServerLib::Server ), NULL, CLSCTX_ALL, __uuidof( MapForceServerLib::IServer ), reinterpret_cast< void** >( &pMFS ) ); //Set a working directory - used as a base for relative paths pMFS->WorkingDirectory = "c:\\temp"; //Default path to the MapForce Server executable is the installation path (same dir with the MapForceServer.dll) //In case you moved the binaries on the disk, you need to explicitly set the path to the .exe file //pMFS->ServerPath = "C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\bin\\MapForceServer.exe"; //Prepare the parameters, if your mapping uses parameters //pMFS->AddParameter( "testparam1", "value 1" ); //Run the mapping; the output will be stored at C:\temp Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 53 \ExpReport.rtf // NOTE Please adapt the path to the input file in order to run the sample if (pMFS->Run("C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\etc\\Examples\\CompletePO.mfx")) std::cout << "Success - finished execution" << std::endl; else std::cout << pMFS->LastExecutionMessage << std::endl; } catch (_com_error& err ) { BSTR bstrMessage; (err).ErrorInfo()->GetDescription( &bstrMessage ); std::cout << "Exception occurred: " << _com_util::ConvertBSTRToString( bstrMessage ) << std::endl; } CoUninitialize(); return 0; } Java The following example illustrates how to run a mapping execution file (.mfx) from Java code. Before testing this example, ensure the following prerequisites are met: MapForce Server is installed and licensed MapForce Server libraries are added to the .classpath file in your project (for an example, see About the Java Interface). public class Program { public static void main(String[] args) { try { //Create a MapForce Server object com.altova.mapforceserver.MapForceServer objMFS = new com.altova.mapforceserver.MapForceServer(); //Set a working directory - used as a base for relative paths objMFS.setWorkingDirectory( "C:\\temp" ); //Default path to the MapForce Server executable is the installation path (same dir with the MapForceServer.jar) //In case you copied the JAR file to a new location, you need to © 2016 Altova Gmb H Altova MapForce Server 2016 54 Altova MapForce Server 2016 MapForce Server API explicitly set the path to the .exe file //objMFS.setServerPath( "C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\bin\\MapForceServer.exe" ); //Prepare the parameters, if your design uses parameters //objMFS.AddParameter( "testparam1", "value 1" ); //Run the mapping; input and output paths are stored inside the MFX file // NOTE Please adapt the path to the input file in order to run the sample if ( objMFS.run( "C:\\Program Files (x86)\\Altova\ \MapForceServer2015\\etc\\Examples\\CompletePO.mfx" ) ) System.out.println( "Success - finished execution" ); else System.out.println( objMFS.getLastExecutionMessage() ); } catch ( Exception e) { e.printStackTrace(); } } } VBScript The following example illustrates how to run a mapping execution file (.mfx) from VBScript code. Before testing this example, ensure the following prerequisites are met: MapForce Server is installed and licensed MapForce Server is available as a COM server object (normally, this process takes place automatically during MapForce Server installation; to check if registration was successful, see About the COM Interface). Option Explicit 'Create a MapForce Server object; use "MapForce_x64.Server" if you want to use the 64-bit installation Dim objMFS Set objMFS = WScript.GetObject( "", "MapForce.Server" ) 'Set a working directory - used as a base for relative paths objMFS.WorkingDirectory = "C:\temp" 'Default path to the MapForce Server executable is the installation path (same dir with the MapForceServer.dll) 'In case you moved the binaries on the disk, you need to explicitly set the path to the .exe file 'objMFS.ServerPath = "C:\Program Files (x86)\Altova\MapForceServer2015\bin \MapForceServer.exe" 'Prepare the parameters, if your mapping uses parameters Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 55 'Call objMFS.AddParameter( "testparam1", "value 1" ) ' Run the mapping; input and output paths are stored inside the MFX file ' NOTE Please adapt the path to the input file in order to run the sample If ( objMFS.Run( "C:\Program Files (x86)\Altova\MapForceServer2015\etc \Examples\CompletePO.mfx" ) ) Then WScript.Echo( "Success - finished execution" ) Else WScript.Echo( objMFS.LastExecutionMessage ) End If Visual Basic The following example illustrates how to run a mapping execution file (.mfx) from Visual Basic code. Before testing this example, ensure the following prerequisites are met: MapForce Server is installed and licensed A reference to the MapForce Server DLL has been added in your Visual Studio project (see About the .NET Interface). Option Explicit On Module Program Sub Main() 'Create a MapForce Server object; use "MapForce_x64.Server" if you want to use the 64-bit installation Dim objMFS As Altova.MapForceServer.Server = New Altova.MapForceServer.Server 'Set a working directory - used as a base for relative paths objMFS.WorkingDirectory = "C:\temp" 'Default path to the MapForce Server executable is the installation path (same dir with the MapForceServer.dll) 'In case you moved the binaries on the disk, you need to explicitly set the path to the .exe file 'objMFS.ServerPath = "C:\Program Files (x86)\Altova \MapForceServer2015\bin\MapForceServer.exe" 'Prepare the parameters, if your mapping uses parameters 'objMFS.AddParameter( "testparam1", "value 1" ) ' Run the mapping; input and output paths are stored inside the MFX file ' NOTE Please adapt the path to the input file in order to run the sample If (objMFS.Run("C:\Program Files (x86)\Altova\MapForceServer2015\etc \Examples\CompletePO.mfx")) Then System.Console.WriteLine("Success - finished execution") Else © 2016 Altova Gmb H Altova MapForce Server 2016 56 Altova MapForce Server 2016 MapForce Server API System.Console.WriteLine(objMFS.LastExecutionMessage) End If End Sub End Module Visual Basic for Applications (VBA) Microsoft Visual Basic for Applications (VBA) is primarily used for automating tasks in Microsoft Office. However, it is also possible to call the MapForce Server API from VBA and execute mappings. The following instructions have been tested on MapForce Server and the VBA for Microsoft Office 2013. Instructions may differ if you are using another VBA development environment. Prerequisites Before you can call the MapForce Server API functions from your VBA project, note the following prerequisites: 1. 2. 3. Microsoft Office and MapForce Server must be installed on the same machine. The architecture of MapForce Server (32-bit or 64-bit) must match that of Microsoft Office. For example, if you run VBA on Microsoft Office 32-bit, make sure that you use MapForce Server 32-bit. To find out whether your Office product runs on 64-bit, click the File tab, click Account, and then click "About Excel" (or "About Word"). The MapForce Server library must be referenced from your VBA project (see instructions below). How to add a reference to the MapForce Server Library from your VBA project 1. In a macro-enabled Microsoft Office document (.docm, .xlsm), on the Developer tab, click Visual Basic. By default, the Developer tab is not enabled in Microsoft Office. To enable the Developer tab in an Office 2013 program, right-click the ribbon and select Customize the Ribbon from the context menu. Then, in the Options dialog box, select the Developer check box under "Main Tabs". 2. In the VBA development environment, in the Tools menu, click References. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 3. MapForce Server API 57 Click to select the MapForce Server Type Library. How to call the MapForce Server API Once you have added a reference to the MapForce Server Library in your VBA project, you can enter the VBA code in the Code Editor window. For example, the following sample code calls MapForce Server and runs a mapping executable file (mapping.mfx) that takes an input parameter called "outfile" having the value "output.csv". Sub RunMapping() ' Create a new instance of the MapForce Server Dim objMFS As New MapForceServerLib.Server With objMFS ' Set the working directory ' (used as base if the mapping has relative paths) .WorkingDirectory = "C:\temp\" ' If the mapping has parameters, supply them Call .AddParameter("outfile", "output.csv") ' Run the mapping .Run ("C:\temp\mapping.mfx") End With End Sub Press F5 to debug the VBA code and run the mapping. © 2016 Altova Gmb H Altova MapForce Server 2016 58 Altova MapForce Server 2016 Altova MapForce Server 2016 MapForce Server API © 2016 Altova Gmb H Altova MapForce Server 2016 1.6.5 MapForce Server API 59 API Reference (COM, .NET) This section provides general reference to the MapForce Server API elements (such as interfaces and methods) applicable to code written for the COM or .NET platforms. Interfaces The MapForce Server API exposes the following interface: IServer IServer Interface Purpose The IServer interface creates a new MapForce Server object instance, and provides access to the MapForce Server engine. The IServer interface has the following members: Methods Properties Methods AddParameter method Assigns a value to a parameter defined in the mapping. C# void AddParameter(string bstrName, string bstrValue) C++ HRESULT AddParameter([in] BSTR bstrName, [in] BSTR bstrValue ); VB Sub AddParameter(ByVal bstrName As String, ByVal bstrValue As String) ClearParameterList method Clears the list of parameters. C# void ClearParameterList() C++ HRESULT ClearParameterList(); VB © 2016 Altova Gmb H Altova MapForce Server 2016 60 Altova MapForce Server 2016 MapForce Server API Sub ClearParameterList() GetOutputParameter method Gets the string output generated by the last run command. Returns null if no output was generated. This function requires a string parameter which identifies the name of the output component in MapForce. C# string GetOutputParameter(string bstrName) C++ HRESULT GetOutputParameter([in] BSTR bstrName, [out, retval] BSTR* pbstrValue ); VB Function GetOutputParameter(bstrName As String) As String Run method Executes a MapForce Server Execution file (.mfx file). Returns TRUE in case of success; FALSE otherwise. C# bool Run(string bstrMappingPath) C++ HRESULT Run( [in] BSTR bstrMappingPath, [out, retval] VARIANT_BOOL* pbSuccess ); VB Function Run(ByVal bstrMappingPath As String) As Boolean Properties APIMajorVersion property Gets the major version of the MapForce Server API. This can be different from the product version if the API is connected to another server. C# int APIMajorVersion { get; } Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 61 C++ HRESULT APIMajorVersion([out, retval] INT* pnVal); VB ReadOnly Property APIMajorVersion As Integer APIMinorVersion property Gets the minor version of the MapForce Server API. This can be different from the product version if the API is connected to another server. C# int APIMinorVersion { get; } C++ HRESULT APIMinorVersion([out, retval] INT* pnVal); VB ReadOnly Property APIMinorVersion As Integer APIServicePackVersion property Gets the service pack version of the MapForce Server API. This can be different from the product version if the API is connected to another server. C# int APIServicePackVersion { get; } C++ HRESULT APIServicePackVersion([out, retval] INT* pnVal); VB ReadOnly Property APIServicePackVersion As Integer Is64Bit property Returns TRUE if the MapForce Server engine is a 64-bit executable. C# bool Is64Bit { get; } C++ © 2016 Altova Gmb H Altova MapForce Server 2016 62 Altova MapForce Server 2016 MapForce Server API HRESULT Is64Bit([out, retval] VARIANT_BOOL* pbVal); VB ReadOnly Property Is64Bit As Boolean LastExecutionMessage property Gets the message received during the last Run command. C# string LastExecutionMessage { get; } C++ HRESULT LastExecutionMessage([out, retval] BSTR* pbstrResult ); VB ReadOnly Property LastExecutionMessage As String MajorVersion property Gets the major version of the product (for example, "16" for Altova MapForce Server 2014 r2 sp1 (x64)). C# int MajorVersion { get; } C++ HRESULT MajorVersion([out, retval] INT* pnVal); VB ReadOnly Property MajorVersion As Integer MinorVersion property Gets the minor version of the product (for example, "2" for Altova MapForce Server 2014 r2 sp1 (x64)). C# int MinorVersion { get; } C++ HRESULT MinorVersion([out, retval] INT* pnVal); Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 63 VB ReadOnly Property MinorVersion As Integer ProductName property Gets the name of the product (for example, "Altova MapForce Server" for Altova MapForce Server 2014 r2 sp1 (x64)). C# string ProductName { get; } C++ HRESULT ProductName([out, retval] BSTR* pstrVal); VB ReadOnly Property ProductName As String ProductNameAndVersion property Gets the complete name and version of the product (for example, "Altova MapForce Server 2014 r2 sp1 (x64)"). C# string ProductNameAndVersion { get; } C++ HRESULT ProductNameAndVersion([out, retval] BSTR* pstrVal); VB ReadOnly Property ProductNameAndVersion As String ServerPath property Gets or sets the path of the MapForce Server executable. C# string ServerPath { set; get; } C++ HRESULT ServerPath([in] BSTR bstrServerFile ); HRESULT ServerPath([out, retval] BSTR* pbstrServerFile ); © 2016 Altova Gmb H Altova MapForce Server 2016 64 Altova MapForce Server 2016 MapForce Server API VB Property ServerPath As String ServicePackVersion property Gets the service pack version of the product (for example, "1" for Altova MapForce Server 2014 r2 sp1 (x64)). C# int ServicePackVersion { get; } C++ HRESULT ServicePackVersion([out, retval] INT* pnVal); VB ReadOnly Property ServicePackVersion As Integer WorkingDirectory property Gets or sets the current directory for running jobs (relative paths will be evaluated against the working directory). C# string WorkingDirectory { set; get; } C++ HRESULT WorkingDirectory([in] BSTR bstrWorkingDirectory ); HRESULT WorkingDirectory([out, retval] BSTR* pbstrWorkingDirectory ); VB Property WorkingDirectory As String Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.6.6 MapForce Server API 65 API Reference (Java) This section provides general reference to the MapForce Server API elements (such as classes and methods) applicable to code written for the Java platform. Package com.altova.mapforceserver The package com.altova.mapforceserver consists of the following classes: MapForceServer Class MapForceServerException Class MapForceServer Class Purpose The MapForceServer class creates a new MapForce Server object instance, and provides access to the MapForce Server engine. Methods addParameter method Assigns a value to a parameter defined in the mapping. public void addParameter(java.lang.String name, java.lang.String value) clearParameterList method Clears the list of parameters. public void clearParameterList() getAPIMajorVersion method Gets the major version of the MapForce Server API. This can be different from the product version if the API is connected to another server. public int getAPIMajorVersion() getAPIMinorVersion method Gets the minor version of the MapForce Server API. This can be different from the product version if the API is connected to another server. public int getAPIMinorVersion() © 2016 Altova Gmb H Altova MapForce Server 2016 66 Altova MapForce Server 2016 MapForce Server API getAPIServicePackVersion method Gets the service pack version of the MapForce Server API. This can be different from the product version if the API is connected to another server. public int getAPIServicePackVersion() getLastExecutionMessage method Gets the message received during the last Run command. public java.lang.String getLastExecutionMessage() getMajorVersion method Gets the major version of the product (for example, "16" for Altova MapForce Server 2014 r2 sp1 (x64)). public int getMajorVersion() throws MapForceServerException getMinorVersion method Gets the minor version of the product (for example, "2" for Altova MapForce Server 2014 r2 sp1 (x64)). public int getMinorVersion() throws MapForceServerException getOutputParameter method Gets the string output generated by the last run command. Returns null if no output was generated. This function requires a string parameter which identifies the name of the output component in MapForce. public String getOutputParameter( String name ) getProductName method Gets the name of the product (for example, "Altova MapForce Server" for Altova MapForce Server 2014 r2 sp1 (x64)). Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 MapForce Server API 67 public java.lang.String getProductName() throws MapForceServerException getProductNameAndVersion method Gets the complete name and version of the product (for example, "Altova MapForce Server 2014 r2 sp1 (x64)"). public java.lang.String getProductNameAndVersion() throws MapForceServerException getServicePackVersion method Gets the service pack version of the product (for example, "1" for Altova MapForce Server 2014 r2 sp1 (x64)). public int getServicePackVersion() throws MapForceServerException is64Bit method Returns true if the MapForce Server engine is a 64-bit executable. public boolean is64bit() throws MapForceServerException run method Executes a MapForce Server Execution file (.mfx file). Returns true in case of success; false otherwise. public boolean run(java.lang.String mappingPath) throws MapForceServerException setServerPath method Sets the path of the MapForce Server executable. public void setServerPath(java.lang.String serverFile) © 2016 Altova Gmb H Altova MapForce Server 2016 68 Altova MapForce Server 2016 MapForce Server API setWorkingDirectory method Sets the current directory for running jobs (relative paths will be evaluated against the working directory). public void setWorkingDirectory(java.lang.String workingDirectory) MapForceServerException Class Purpose The MapForceServerException class provides programmatic access to exceptions thrown by the MapForceServer class. public class MapForceServerException extends Exception Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.7 Altova LicenseServer 69 Altova LicenseServer Altova LicenseServer (hereafter also called LicenseServer for short) provides a central location for the management of licenses for Altova products. Altova applications running in a network can have licenses assigned to them from the LicenseServer, thus giving administrators the flexibility to manage and monitor licenses. Current version: 1.27 Licensing process with Altova LicenseServer To assign an Altova server product a license via Altova LicenseServer, you need to do the following: 1. 2. 3. 4. 5. Start LicenseServer Open the LicenseServer Configuration page, which is the Web UI of LicenseServer, on Windows, Linux, or Mac OS X. Upload the server product license/s you have received from Altova to LicenseServer. Do this in the License Pool tab of the Configuration page. Register Altova server products (FlowForce Server, MapForce Server, StyleVision Server, RaptorXML(+XBRL) Server) with LicenseServer. Assign licenses to Altova server In the Server Management tab of the Configuration page. Licenses can thereafter be conveniently monitored and managed centrally with LicenseServer. See the Configuration Page Reference for available functionality. Note: The LicenseServer Configuration page does not support SSL. LicenseServer versions and their compatibility with Altova server products New versions of Altova server products can only be licensed with the version of LicenseServer that is the latest at the time of the server product's release. However, older versions of Altova server products will work with newer versions of LicenseServer. So, if you are installing a new version of an Altova server product and if your current LicenseServer version is not the latest, de-install this older version and install the latest version available on the Altova website. All registration and licensing information held in your older version of LicenseServer will be saved at the time of de-installation to a database on your server machine, and will be imported automatically into the newer version. When you install a newer version of LicenseServer, the older version will be de-installed before the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 © 2016 Altova Gmb H Altova MapForce Server 2016 70 Altova MapForce Server 2016 Altova LicenseServer About this documentation This documentation is organized into the following parts: Introductory information about: network requirements; installation on Windows, Linux, and Mac OS X; and Altova ServiceController. How to Assign Licenses, which describes in a step-by-step way how to assign licenses with Altova LicenseServer. Configuration Page Reference: A description of the administrator's interface with LicenseServer. Last updated: 19 April 2016 Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.7.1 Altova LicenseServer 71 Network Information Altova LicenseServer must be installed on a server machine that is accessible by all clients running Altova products that require a license. Any firewall on both the client and server must allow the network traffic to and from the LicenseServer that is necessary for the LicenseServer to operate correctly. On the LicenseServer machine, port 35355 is used to distribute licenses, and therefore it must be open for network traffic with client machines. The following are the default networking parameters and requirements of LicenseServer: For LicenseServer license distribution: Either one or both of IPv4 TCP connection on port 35355 IPv6 TCP connection on port 35355 For administrative tasks, the LicenseServer is accessed by a web interface that uses port 8088. The port used can be configured to suit your requirements. Connection to the Master Licensing Server at altova.com The Altova LicenseServer needs to be able to communicate with the Master Licensing Server at altova.com to validate and authenticate license-related data and to ensure continuous compliance with the Altova license agreements. This communication occurs over HTTPS using port 443. If the Altova LicenseServer, after making the initial verification with the altova.com Master Licensing Server, is unable to again connect with altova.com for a duration of more than 5 days (= 120 hours), then the Altova LicenseServer will no longer permit the usage of any Altova software products connected to the Altova LicenseServer. Any such loss of connection with the altova.com master servers will be logged in the Messages tab of the Configuration page of the Altova LicenseServer. In addition, the administrator can configure the Altova LicenseServer to automatically send an alert email when the connection to altova.com is lost. Alert Mail settings are available in the Settings tab of the Configuration page. © 2016 Altova Gmb H Altova MapForce Server 2016 72 Altova MapForce Server 2016 1.7.2 Installation (Windows) Altova LicenseServer Altova LicenseServer can be installed on Windows systems in one of two ways: As an independent installation. As part of an Altova server product installation. (Altova server products are: Altova FlowForce Server, Altova MapForce Server, Altova StyleVision Server, Altova RaptorXML(+XBRL), and Altova MobileTogether Server.) If LicenseServer is not installed on your system at the time an Altova server product is installed, the option to install LicenseServer is selected by default during installation setup. If LicenseServer is already installed, the option to install it is deselected by default. You can change the default option if you like. For information about how to proceed with assigning licenses, see the section How to Assign Licenses. System requirements Windows Windows XP (SP2 for x64; SP3 for x86), Windows Vista, Windows 7, Windows 8, Windows 10 Windows Server Windows Server 2008 R2 or newer LicenseServer versions and their compatibility with Altova server products New versions of Altova server products can only be licensed with the version of LicenseServer that is the latest at the time of the server product's release. However, older versions of Altova server products will work with newer versions of LicenseServer. So, if you are installing a new version of an Altova server product and if your current LicenseServer version is not the latest, de-install this older version and install the latest version available on the Altova website. All registration and licensing information held in your older version of LicenseServer will be saved at the time of de-installation to a database on your server machine, and will be imported automatically into the newer version. When you install a newer version of LicenseServer, the older version will be de-installed before the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 The version number of the LicenseServer that is appropriate for any particular version of a server Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 73 product is displayed during the installation of that version of the server product. You can choose to install this version of LicenseServer along with the server product, or you can install the newer version of LicenseServer separately. In both cases, the installer will automatically de-install the previous version and install the new version. © 2016 Altova Gmb H Altova MapForce Server 2016 74 Altova MapForce Server 2016 1.7.3 Installation (Linux) Altova LicenseServer Altova LicenseServer can be installed on Linux systems (Debian, Ubuntu, CentOS, RedHat). System requirements Linux CentOS 6 or newer RedHat 6 or newer Debian 6 or newer Ubuntu 12.04 or newer Note that the Libidn library, available under GNU LGPL, must be installed. Uninstalling old versions of LicenseServer On the Linux command line interface (CLI), you can check whether LicenseServer is installed with the following command: [Debian, Ubuntu]: [CentOS, RedHat]: dpkg --list | grep Altova rpm -qa | grep server If LicenseServer is not installed, go ahead with the installation as documented in the next steps. If LicenseServer is installed and you wish to install a newer version of it, uninstall the old version with the command: [Debian, Ubuntu]: [CentOS, RedHat]: sudo dpkg --remove licenseserver sudo rpm -e licenseserver Installing Altova LicenseServer On Linux systems, LicenseServer must be installed independently of other Altova server products. It is not included as part of the installation packages of Altova server products. Download Altova LicenseServer from the Altova website and copy the package to any directory on the Linux system. Distribution Installer extension Debian .deb Ubuntu .deb CentOS .rpm RedHat .rpm Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 75 In a terminal window, switch to the directory where you have copied the Linux package. For example, if you copied it to a user directory called MyAltova (that is located, say, in the /home/ User directory), then switch to this directory as follows: cd /home/User/MyAltova Install LicenseServer with the following command: [Debian]: [Ubuntu]: [CentOS]: [RedHat]: sudo sudo sudo sudo dpkg --install licenseserver-1.27-debian.deb dpkg --install licenseserver-1.27-ubuntu.deb rpm -ivh licenseserver-1.27-1.x86_64.rpm rpm -ivh licenseserver-1.27-1.x86_64.rpm The LicenseServer package will be installed in: /opt/Altova/LicenseServer For information about how to proceed with assigning licenses, see the section How to Assign Licenses. LicenseServer versions and their compatibility with Altova server products New versions of Altova server products can only be licensed with the version of LicenseServer that is the latest at the time of the server product's release. However, older versions of Altova server products will work with newer versions of LicenseServer. So, if you are installing a new version of an Altova server product and if your current LicenseServer version is not the latest, de-install this older version and install the latest version available on the Altova website. All registration and licensing information held in your older version of LicenseServer will be saved at the time of de-installation to a database on your server machine, and will be imported automatically into the newer version. When you install a newer version of LicenseServer, the older version will be de-installed before the newer version is installed. The version number of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page (all tabs). Current version: 1.27 © 2016 Altova Gmb H Altova MapForce Server 2016 76 Altova MapForce Server 2016 1.7.4 Installation (Mac OS X) Altova LicenseServer Altova LicenseServer can be installed on Mac OS X systems (version 10.8 or higher). Since you might need to uninstall a previous version, uninstalling is described first. System requirements Mac OS X Mac OS X 10.8 or newer Uninstalling old versions of LicenseServer Before uninstalling LicenseServer, stop the service with the following command: sudo launchctl unload /Library/LaunchDaemons/com.altova.LicenseServer.plist To check whether the service has been stopped, open the Activity Monitor terminal and make sure that LicenseServer is not in the list. In Applications, right-click the LicenseServer icon and select Move to Trash. The application will be moved to Trash. You will, however, still need to remove the application from the usr folder. Do this with the command: sudo rm -rf /usr/local/Altova/LicenseServer Installing Altova LicenseServer Open the download page http://www.altova.com/download.html and locate the Altova LicenseServer installer under "Server Software Products" for Mac. After downloading the disk image (.dmg) file, click to open it. This mounts a new virtual drive on your computer. On the virtual drive, double-click the package (.pkg) file, and follow the on-screen instructions. You will need to accept the license agreement for installation to proceed. The LicenseServer package will be installed in the folder: /usr/local/Altova/LicenseServer To eject the virtual drive after installation, right-click it, and select Eject. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.7.5 Altova LicenseServer 77 Altova ServiceController Altova ServiceController (ServiceController for short) is an application for conveniently starting, stopping and configuring Altova services on Windows systems. ServiceController is installed with Altova LicenseServer and with Altova server products that are installed as services (FlowForce Server, RaptorXML(+XBRL) Server, and Mobile Together Server). It can be started by clicking Start | Altova LicenseServer | Altova ServiceController. (This command is also available in the Start menu folders of Altova server products that are installed as services (FlowForce Server, RaptorXML(+XBRL) Server, and Mobile Together Server).) After ServiceController has been started, it can be accessed via the system tray (screenshot below). To specify that ServiceController starts automatically on logging in to the system, click the ServiceController icon in the system tray to display the ServiceController menu (screenshot below), and then toggle on the command Run Altova ServiceController at Startup. (This command is toggled on by default.) To exit ServiceController, click the ServiceController icon in the system tray and, in the menu that appears (see screenshot below), click Exit Altova ServiceController. Starting and stopping Altova services Each installed Altova service component will have an entry in the ServiceController menu (see screenshot above). An Altova service can be started or stopped via a command in its ServiceController sub-menu. Additionally, important administration tasks of individual services can be accessed via the ServiceController menu. In the screenshot above, for example, Altova LicenseServer service has a sub-menu in which you can choose to access LicenseServer's Configuration page via the Configure command. © 2016 Altova Gmb H Altova MapForce Server 2016 78 Altova MapForce Server 2016 1.7.6 How to Assign Licenses Altova LicenseServer To assign an Altova server product a license using Altova LicenseServer, do the following: 1. 2. 3. 4. 5. Start LicenseServer Open the LicenseServer Configuration page, which is the administrator's interface with LicenseServer, on Windows, Linux, or Mac OS X. Upload the license/s you have received from Altova to the license pool of your Altova LicenseServer. Do this in the License Pool tab of the LicenseServer Configuration page. Register the Altova server product (FlowForce Server, MapForce Server, StyleVision Server, RaptorXML(+XBRL) Server) with LicenseServer. Depending on the product's type, the method of registering it with LicenseServer will be different: either via the product's Web UI or its command line. See the documentation of your Altova server product for additional information. In the Server Management tab of the LicenseServer Configuration page, assign a license to the Altova server product according to the number of cores on the product machine. Note on cores and licenses The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. Note: Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client devices) that are allowed to connect to the MobileTogether Server at one time. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 79 Start LicenseServer This section: How to start LicenseServer on Windows systems How to start LicenseServer on Linux systems How to start LicenseServer on Mac OS X systems Note about Connection to altova.com Windows systems You can start LicenseServer via the Altova ServiceController, which is available in the system tray. First, click Start | All Programs | Altova LicenseServer | Altova ServiceController to start Altova ServiceController and display its icon in the system tray (see screenshot below). If you select the Run Altova ServiceController at Startup option, Altova ServiceController will start up on system start and its icon will be available in the system tray from then onwards. To start LicenseServer, click the Altova ServiceController icon in the system tray, hover over Altova LicenseServer in the menu that pops up (see screenshot below), and then select Start Service from the LicenseServer submenu. If LicenseServer is already running, the Start Service option will be disabled. Linux systems To start LicenseServer as a service on Linux systems, run the following command in a terminal window. [Debian 6,7]: [Debian 8]: [Ubuntu <=14]: [Ubuntu 15]: [CentOS 6]: [CentOS 7]: [RedHat]: © 2016 Altova Gmb H sudo sudo sudo sudo sudo sudo sudo /etc/init.d/licenseserver start systemctl start licenseserver initctl start licenseserver systemctl start licenseserver initctl start licenseserver systemctl start licenseserver initctl start licenseserver Altova MapForce Server 2016 80 Altova MapForce Server 2016 Altova LicenseServer (If you need to stop LicenseServer, replace start with stop in the above command.) Mac OS X systems To start LicenseServer as a service on Mac OS X systems, run the following command in a terminal window: sudo launchctl load /Library/LaunchDaemons/com.altova.LicenseServer.plist If at any time you need to stop LicenseServer, use: sudo launchctl unload /Library/LaunchDaemons/com.altova.LicenseServer.plist Connection to the Master Licensing Server at altova.com The Altova LicenseServer needs to be able to communicate with the Master Licensing Server at altova.com to validate and authenticate license-related data and to ensure continuous compliance with the Altova license agreements. This communication occurs over HTTPS using port 443. If the Altova LicenseServer, after making the initial verification with the altova.com Master Licensing Server, is unable to again connect with altova.com for a duration of more than 5 days (= 120 hours), then the Altova LicenseServer will no longer permit the usage of any Altova software products connected to the Altova LicenseServer. Any such loss of connection with the altova.com master servers will be logged in the Messages tab of the Configuration page of the Altova LicenseServer. In addition, the administrator can configure the Altova LicenseServer to automatically send an alert email when the connection to altova.com is lost. Alert Mail settings are available in the Settings tab of the Configuration page. Open LicenseServer's Config Page (Windows) This section: Opening the Configuration page if LicenseServer is on the same machine Opening the Configuration page if LicenseServer is on another machine Logging in with the initial password Setting a fixed port for the Configuration page Opening the Configuration page if LicenseServer is on the same machine On Windows systems, if LicenseServer is on the same machine, you can open the Configuration page of LicenseServer in one of two ways: Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 81 Click Start | All Programs | Altova LicenseServer | LicenseServer Configuration Page. The Configuration page opens in a new tab of your Internet browser. Click the Altova ServiceController icon in the system tray, mouse over Altova LicenseServer in the menu that pops up (see screenshot below), and then select Configure from the LicenseServer submenu. The Configuration page opens in a new browser window, and its login mask is displayed (screenshot below). Opening the Configuration page if LicenseServer is on another machine To open the LicenseServer Configuration page from some other Windows machine on the local network (than that on which LicenseServer is installed), enter the URL of the LicenseServer Configuration page in the address bar of a browser and press Enter. By default, the URL of the Configuration page will be: http://<serverIPAddressOrName>:8088/ The URL is present in the HTML code of the Configuration page itself, which is named WebUI.html and is located at: C:/ProgramData/Altova/LicenseServer/WebUI.html If you have set the URL of the Configuration page to be generated dynamically (in the Settings tab of the Configuration page), then a new URL is generated each time LicenseServer is started. You will need to check the current version of WebUI.html to find out the current URL of the Configuration page. The dynamically generated URL in WebUI.html will have a form something like: http://127.0.0.1:55541/optionally-an-additional-string, and it is located in the function checkIfServiceRunning()in a script near the end of the <head> element. While the port number in the URL is dynamically assigned, the IP address part identifies the server on which LicenseServer has been installed. If you wish to access the LicenseServer Configuration page from another machine, make sure that the IP address part of the URL has the correct IP address or name of the server on which LicenseServer has been installed. For example, the URL could be something like: http://MyServer:55541. © 2016 Altova Gmb H Altova MapForce Server 2016 82 Altova MapForce Server 2016 Altova LicenseServer Logging in with the initial password After going through the steps above, the Configuration page is opened with the login mask displayed (screenshot below). You can log in with the initial password of default. After you have logged in, you can change your password in the Settings tab. Setting a fixed or dynamic port for the Configuration page The port of the Configuration page (Web UI)—and consequently its address—can be specified in the Settings page. By default the port is 8088. You can set any other port you want for the LicenseServer Configuration page (see screenshot below). Alternatively, you allow the port to be selected dynamically each time LicenseServer starts up. In this case, you will need to find out the URL of the Configuration page from the file WebUI.html (see Open LicenseServer Config Page (Windows) and Open LicenseServer Config Page (Linux)). The advantage of a fixed port is that the page URL is known in advance and therefore can be Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 83 accessed easily. If the port is assigned dynamically, the port part of the URL will have to be looked up in the file WebUI.html each time LicenseServer is started. Open LicenseServer's Config Page (Linux) This section: Opening the Configuration page for the first time with the returned URL URL of the LicenseServer Configuration page Logging in with the initial password Setting a fixed port for the Configuration page Opening the Configuration page for the first time with the returned URL On Linux systems, when you register your Altova server product with LicenseServer via the CLI, the URL of the LicenseServer Configuration page is returned. On opening this URL in a browser, you are prompted to read and accept the license agreement. After accepting the license agreement, the Configuration page's login mask is displayed (screenshot below). URL of the LicenseServer Configuration page To open the LicenseServer Configuration page at any time, enter its URL in the address bar of a browser and press Enter. By default, the URL of the Configuration page will be: http://<serverIPAddressOrName>:8088/ The URL is present in the HTML code of the Configuration page itself, which is named webUI.html and is located at: /var/opt/Altova/LicenseServer/webUI.html If you have set the URL of the Configuration page to be generated dynamically (in the Settings tab of the Configuration page), then a new URL is generated each time LicenseServer is started. You will need to check the current version of webUI.html to find out the current URL of the Configuration page. The dynamically generated URL in webUI.html will have a form something like: http://127.0.0.1:55541, and it is located in the function checkIfServiceRunning() in a script near the end of the <head> element. While the port number in the URL is dynamically assigned, the IP address part identifies the server on which LicenseServer has been installed. If you wish to access the LicenseServer Configuration page from another machine, make sure that the IP address part of the URL has the correct IP address or name of the server on which LicenseServer has been installed. For example, the URL could be something like: http://MyServer:55541. Logging in with the initial password © 2016 Altova Gmb H Altova MapForce Server 2016 84 Altova MapForce Server 2016 Altova LicenseServer After going through the steps above, the Configuration page is opened with the login mask displayed (screenshot below). You can log in with the initial password of default. After you have logged in, you can change your password in the Settings tab. Setting a fixed or dynamic port for the Configuration page The port of the Configuration page (Web UI)—and consequently its address—can be specified in the Settings page. By default the port is 8088. You can set any other port you want for the LicenseServer Configuration page (see screenshot below). Alternatively, you allow the port to be selected dynamically each time LicenseServer starts up. In this case, you will need to find out the URL of the Configuration page from the file WebUI.html (see Open LicenseServer Config Page (Windows) and Open LicenseServer Config Page (Linux)). The advantage of a fixed port is that the page URL is known in advance and therefore can be accessed easily. If the port is assigned dynamically, the port part of the URL will have to be looked up in the file WebUI.html each time LicenseServer is started. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 85 Open LicenseServer's Config Page (Mac OS X) This section: Opening the Configuration page for the first time with the returned URL URL of the LicenseServer Configuration page Logging in with the initial password Setting a fixed port for the Configuration page Opening the Configuration page for the first time with the returned URL On Mac OS X systems, when you register your Altova server product with LicenseServer via the CLI, the URL of the LicenseServer Configuration page is returned. On opening this URL in a browser, you are prompted to read and accept the license agreement. After accepting the license agreement, the Configuration page's login mask is displayed (screenshot below). URL of the LicenseServer Configuration page To open the LicenseServer Configuration page at any time, enter its URL in the address bar of a browser and press Enter. By default, the URL of the Configuration page will be: http://<serverIPAddressOrName>:8088/ The URL is present in the HTML code of the Configuration page itself, which is named webUI.html and is located at: /var/Altova/LicenseServer/webUI.html If you have set the URL of the Configuration page to be generated dynamically (in the Settings tab of the Configuration page), then a new URL is generated each time LicenseServer is started. You will need to check the current version of webUI.html to find out the current URL of the Configuration page. The dynamically generated URL in webUI.html will have a form something like: http://127.0.0.1:55541, and it is located in the function checkIfServiceRunning() in a script near the end of the <head> element. While the port number in the URL is dynamically assigned, the IP address part identifies the server on which LicenseServer has been installed. If you wish to access the LicenseServer Configuration page from another machine, make sure that the IP address part of the URL has the correct IP address or name of the server on which LicenseServer has been installed. For example, the URL could be something like: http://MyServer:55541. Note: The Configuration page can also be accessed directly via the Finder | Applications | Altova License Server icon. Logging in with the initial password © 2016 Altova Gmb H Altova MapForce Server 2016 86 Altova MapForce Server 2016 Altova LicenseServer After going through the steps above, the Configuration page is opened with the login mask displayed (screenshot below). You can log in with the initial password of default. After you have logged in, you can change your password in the Settings tab. Setting a fixed or dynamic port for the Configuration page The port of the Configuration page (Web UI)—and consequently its address—can be specified in the Settings page. By default the port is 8088. You can set any other port you want for the LicenseServer Configuration page (see screenshot below). Alternatively, you allow the port to be selected dynamically each time LicenseServer starts up. In this case, you will need to find out the URL of the Configuration page from the file WebUI.html (see Open LicenseServer Config Page (Windows) and Open LicenseServer Config Page (Linux)). The advantage of a fixed port is that the page URL is known in advance and therefore can be accessed easily. If the port is assigned dynamically, the port part of the URL will have to be looked up in the file WebUI.html each time LicenseServer is started. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 87 Upload Licenses to LicenseServer This section: Uploading a license file to the license pool of LicenseServer License status Activating the licenses you wish to use Next steps Uploading a license file to the license pool of LicenseServer After you have obtained a license file from Altova, you must upload it to the Altova LicenseServer. (How to do this is described below.) Each license file can contain one or more licenses and depends on your purchase. When you upload a license file, all the licenses in it will be uploaded to LicenseServer and can be assigned to an Altova product that has been registered with that LicenseServer. All the uploaded licenses, from one or more license files and for all Altova products, are collected in a license pool on the LicenseServer. The license pool is displayed in the License Pool tab of the LicenseServer Configuration page (screenshot below). License files are uploaded to the LicenseServer using the Upload function of the License Pool tab (see screenshot below). Click the Browse button and select the license file you want. The license file will appear in the Upload License File text field and the Upload button will be enabled. Click the Upload button to upload the license file. All the licenses in the file are uploaded and displayed in the License Pool tab. The screenshot below shows multiple licenses, uploaded from multiple license files. © 2016 Altova Gmb H Altova MapForce Server 2016 88 Altova MapForce Server 2016 Altova LicenseServer License status License status values are as follows: Activating: When a license is uploaded into the license pool of LicenseServer, the server will transmit license-related data to the altova.com master licensing server to validate, authenticate, and activate the license that was supplied. This is necessary to ensure compliance with the Altova license agreements. During this initial activation and authentication transaction—which typically lasts between 30 seconds and a couple of minutes, depending on your Internet connection, speed, and overall network traffic—the status of the license will be indicated as Activating.... Failed Verification: If a connection with the altova.com master licensing server cannot be made, then the status of the license in the pool will be shown as Failed Verification. If this happens, check your Internet connection and firewall rules to ensure that LicenseServer is able to communicate with the altova.com master licensing server. Active: Once the license has been authenticated and activated, the status in the pool will change to Active. Inactive: If a license has been verified, but is present on another LicenseServer on the network, the status in the pool will be shown as Inactive. An Inactive status also results when a license is manually deactivated in the license pool by the administrator. Pending: If the start date of a license is a date in the future, then the license is shown as Pending. The status will change to Active on the start date. A Pending license can be assigned to a product and ensures that the licensing of a product continues uninterrupted Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 89 before an existing license expires. (A product is allowed to have two active licenses assigned to it at a given time.) Block ed: A license is shown in the license pool as Block ed if there was a problem authenticating the license and the altova.com master licensing server has not granted permission to the LicenseServer to use this license. This could be the result of a license agreement violation, over-usage of a license, or other compliance issues. Should you see a license showing up as Block ed, please contact Altova Support with your license information and any other relevant data. These statuses are summarized in the table below: Status Meaning Activating... On upload, license information is sent to altova.com for verification. Refresh the browser to view the updated status. Verification and activation can take a few minutes. Failed Verification A connection to altova.com could not be made. After establishing a connection, either restart the service or activate the license (with the Activate button). Active Verification was successful, the license is active. Inactive Verification was successful, but the license is on another LicenseServer on the network. Licenses can be made inactive with the Deactivate button. Pending A Pending license has a start date in the future, and it turns Active on that start date. It can be assigned to a product and ensures the automatic renewal of a product's licensing before an existing license expires. Block ed Verification was not successful. License is invalid and is blocked. Contact Altova Support. Note: After a license has been sent to altova.com for verification, the browser must be refreshed to see the updated status. Verification and activation can take a few minutes. Note: If a connection to altova.com could not be made, the status will be Failed Verification. After establishing a connection, either restart the service or try activating the license with the Activate button. Note: When a license is given a status of Inactive or Block ed, a message explaining the status is also added to the Messages log. Only an active or pending license can be assigned to a product installation. An inactive license can be activated or deleted from the license pool. If a license is deleted from the license pool, it can be uploaded again to the pool by uploading the license file containing it. When a license file is updated, only those licenses in it that are not already in the pool will be uploaded to the pool. To activate, deactivate, or delete a license, select it and then click the Activate, Deactivate, or Delete button, respectively. © 2016 Altova Gmb H Altova MapForce Server 2016 90 Altova MapForce Server 2016 Altova LicenseServer Activate the license/s you wish to use Before you can assign a license to an Altova product, it must be active. So do ensure it is active. If it is inactive, select it and click Activate. Next Steps After you have uploaded the license file to the LicenseServer and checked that the license you want is active, do the following: 1. 2. Register the Altova server product (FlowForce Server, MapForce Server, StyleVision Server) with LicenseServer. (If you have already done this prior to uploading the license file, you can now start assigning licenses.) Assign a license to your Altova product that has been registered with the LicenseServer. Register Product/s Before you can assign a license to an Altova server product, you must register the product installation with LicenseServer. The registration is done from the Altova server product, and the process is different for those server products that have Web UIs and those that are run from the command line only. You will need the server name or IP Address of the machine on which LicenseServer is installed to carry out the registration. This section describes how to register different Altova server products: Register FlowForce Server Register MapForce Server Register StyleVision Server Register RaptorXML(+XBRL) Server Register MobileTogether Server Register FlowForce Server This section: Methods of registering FlowForce Server with LicenseServer Accessing the FlowForce Server Setup page (Windows) Accessing the FlowForce Server Setup page (Linux) Registering FlowForce Server via the Setup page Registering FlowForce Server via the FlowForce CLI (Windows) Registering FlowForce Server via the FlowForce CLI (Linux) Next steps Methods of registering FlowForce Server FlowForce Server can be registered with LicenseServer using any of the following methods: Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 91 Via the FlowForce Server Setup page Via the FlowForce CLI (Windows) Via the FlowForce CLI (Linux) Accessing the FlowForce Server Setup page (Windows) The FlowForce Server Setup page can be accessed in one of the following ways: Via the Start menu: Start | Altova FlowForce Server 2016 | FlowForce Server Setup Page Via Altova ServiceController: Click the ServiceController icon in the system tray. In the menu that pops up, select Altova FlowForce Web | Setup. This pops up the FlowForce Server Setup page (screenshot above). Accessing the FlowForce Server Setup page (Linux) After you have installed FlowForce Server on Linux (see the FlowForce Server user documentation for information about how to do this), start FlowForce Web Server as a service with the following command: sudo /etc/init.d/flowforcewebserver start A message containing the URL of the FlowForce Server Setup appears in the terminal window: FlowForceWeb running on http://127.0.1.1:3459/setup?key=52239315203 Enter the URL in the address field of a browser and hit Enter to access the FlowForce Server Setup page (screenshot below). Registering FlowForce Server via the Setup page In the Setup page (screenshot below)—how to access it is described above—the LicenseServer field specifies the Altova LicenseServer to be used for registration. © 2016 Altova Gmb H Altova MapForce Server 2016 92 Altova MapForce Server 2016 Altova LicenseServer The LicenseServer can be specified in one of two ways. You can search for Altova LicenseServers that are currently available on the network— that is, those that are currently running. Do this by clicking the Search for Altova LicenseServers button (highlighted yellow in the screenshot below). The search returns a list of available Altova LicenseServers on the network. One LicenseServer will be selected (screenshot below) and the others will be available in the dropdown list of the combo box. Select the LicenseServer on which your FlowForce license is stored. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 93 Alternatively, you can enter the address of the LicenseServer in the LicenseServer field. If the currently running LicenseServers are available as a dropdown list, you must click the Manually Enter Address button to be able to enter an address in the LicenseServer field. After you have specified the LicenseServer, click Register with LicenseServer. The Altova server application will be registered with the specified LicenseServer, and that LicenseServer's Configuration page will open in a browser with its Server Management tab active (screenshot below). Note: You may need to allow pop-ups in order for the LicenseServer Configuration page to be displayed. © 2016 Altova Gmb H Altova MapForce Server 2016 94 Altova MapForce Server 2016 Altova LicenseServer In the screenshot below, three Altova products have been registered with the Altova LicenseServer at DOC.altova.com. How to assign licenses is described in the next section, Assign Licenses to Registered Products. Registering FlowForce Server via the FlowForce CLI (Windows) On Windows machines, FlowForce Server can also be registered with an Altova LicenseServer on your network via the command line (CLI) by using the licenseserver command: FlowForceServer licenseserver Server-Or-IP-Address For example, if LicenseServer is running on http://localhost:8088, then register FlowForce Server with: FlowForceServer licenseserver localhost If FlowForce Server was installed with other Altova server products as sub-packages, registering FlowForce Server will automatically also register the Altova server products. After successfully Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 95 registering FlowForce Server, you can go to LicenseServer and assign a license to FlowForce Server. How to do this is described in the section Assign Licenses to Registered Products. Registering FlowForce Server via the FlowForce CLI (Linux) On Linux machines, FlowForce Server can be registered with LicenseServer by using the licenseserver command of the FlowForce Server CLI. Note that FlowForce Server must be started with root rights. sudo /opt/Altova/FlowForceServer2016/bin/flowforceserver licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the FlowForce Server executable is: /opt/Altova/MapForceServer2016/bin After successfully registering FlowForce Server, you can go to LicenseServer and assign a license to FlowForce Server. How to do this is described in the section Assign Licenses to Registered Products. Next Steps After you have registered your Altova product with LicenseServer, do the following: 1. 2. If you have not already uploaded your license file/s to the LicenseServer (see previous section, Upload the license/s), upload the license file now and check that the license you want is active. If you have already done this, carry on to the next step, Assign Licenses. Assign a license to your Altova product that has been registered with the LicenseServer. Register MapForce Server This section: Registering MapForce Server from FlowForce Server (Windows) Registering a standalone MapForce Server (Windows) Registering MapForce Server (Linux) Next steps MapForce Server can be installed as part of the FlowForce Server package, or as a standalone server product. In either case, it must be registered with Altova LicenseServer. After it has been registered with LicenseServer, you can assign a license to it from LicenseServer. On Windows systems, you can install MapForce Server as part of the FlowForce installation. If MapForce Server is installed as part of the FlowForce Server package, it will automatically be registered with LicenseServer when FlowForce is registered with LicenseServer. On Linux systems, the two © 2016 Altova Gmb H Altova MapForce Server 2016 96 Altova MapForce Server 2016 Altova LicenseServer products must be installed separately. If MapForce Server is installed after FlowForce Server, then it will be registered automatically when FlowForce Server is registered. But if MapForce Server is installed before FlowForce Server, you will have to register both products separately. Registering MapForce Server from FlowForce Server (Windows) MapForce Server is packaged with FlowForce Server, so when FlowForce Server is registered with an Altova LicenseServer on your network, MapForce Server will automatically also be registered with LicenseServer. How to register FlowForce Server is described in the FlowForce Server documentation and in the section, Register FlowForce Server with LicenseServer. After the registration, you can go to LicenseServer and assign a MapForce Server license to MapForce Server. How to do this is described in the section, Assign Licenses to Registered Products. Registering a standalone MapForce Server (Windows) If you have installed MapForce Server as a standalone package, you must register it with an Altova LicenseServer on your network and then license it from the Altova LicenseServer. You can register MapForce Server via its command line interface (CLI) by using the licenseserver command: MapForceServer licenseserver Server-Or-IP-Address For example, if LicenseServer is running on http://localhost:8088, then register MapForce Server with: MapForceServer licenseserver localhost After successfully registering MapForce Server, you can go to LicenseServer and assign a license to MapForce Server. How to do this is described in the section, Assign Licenses to Registered Products. Registering MapForce Server (Linux) On Linux machines, MapForce Server can be registered with LicenseServer by using the licenseserver command of the MapForce Server CLI. Note that MapForce Server must be started with root rights. sudo /opt/Altova/MapForceServer2016/bin/mapforceserver licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the MapForce Server executable is: Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 97 /opt/Altova/MapForceServer2016/bin After successfully registering MapForce Server, you can go to LicenseServer and assign a license to MapForce Server. How to do this is described in the section Assign Licenses to Registered Products. Next Steps After you have registered your Altova product with LicenseServer, do the following: 1. 2. If you have not already uploaded your license file/s to the LicenseServer (see previous section, Upload the license/s), upload the license file now and check that the license you want is active. If you have already done this, carry on to the next step, Assign Licenses. Assign a license to your Altova product that has been registered with the LicenseServer. Register StyleVision Server This section: Registering StyleVision Server from FlowForce Server (Windows) Registering a standalone StyleVision Server (Windows) Registering StyleVision Server (Linux) Next steps StyleVision Server can be installed as part of the FlowForce Server package or as a standalone server product. In either case, it must be registered with Altova LicenseServer. Only after it has been registered with LicenseServer can a license be assigned to it from LicenseServer. On Windows systems, if StyleVision Server was installed as part of the FlowForce Server package, it will automatically be registered when FlowForce is registered. On Linux systems, only if StyleVision Server is installed after FlowForce Server will it be registered automatically when FlowForce Server is registered subsequently. Registering StyleVision Server from FlowForce (Windows) StyleVision Server is packaged with FlowForce Server, so when FlowForce Server is registered with an Altova LicenseServer on your network, StyleVision Server will automatically also be registered with LicenseServer. How to register FlowForce Server is described in the FlowForce Server documentation and in the section, Register FlowForce Server with LicenseServer. After the registration, you can go to LicenseServer and assign a StyleVision Server license to StyleVision Server. How to do this is described in the section Assign Licenses to Registered Products. © 2016 Altova Gmb H Altova MapForce Server 2016 98 Altova MapForce Server 2016 Altova LicenseServer Registering a standalone StyleVision Server (Windows) If you have installed StyleVision Server as a standalone package on Windows, you must register it with an Altova LicenseServer on your network and then license it from the Altova LicenseServer. You can register StyleVision Server via its command line interface (CLI) by using the licenseserver command: StyleVisionServer licenseserver Server-Or-IP-Address For example, if LicenseServer is running on http://localhost:8088, then register StyleVision Server with: StyleVisionServer licenseserver localhost After successfully registering StyleVision Server, you can go to LicenseServer and assign a license to StyleVision Server. How to do this is described in the section Assign Licenses to Registered Products. Registering StyleVision Server (Linux) On Linux machines, StyleVision Server can be registered with LicenseServer by using the licenseserver command of the StyleVision Server CLI. Note that StyleVision Server must be started with root rights. sudo /opt/Altova/StyleVisionServer2016/bin/stylevisionserver licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the StyleVision Server executable is: /opt/Altova/StyleVisionServer2016/bin After successfully registering StyleVision Server, you can go to LicenseServer and assign a license to StyleVision Server. How to do this is described in the section Assign Licenses to Registered Products. Next Steps After you have registered your Altova product with LicenseServer, do the following: 1. 2. If you have not already uploaded your license file/s to the LicenseServer (see previous section, Upload the license/s), upload the license file now and check that the license you want is active. If you have already done this, carry on to the next step, Assign Licenses. Assign a license to your Altova product that has been registered with the LicenseServer. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 99 Register RaptorXML(+XBRL) Server This section: Registering RaptorXML(+XBRL) Server (Windows) Registering RaptorXML(+XBRL) Server (Linux) Next steps RaptorXML(+XBRL) Server must be installed on the server machine or network to which LicenseServer is connected and then be started as a service. It must then be registered with LicenseServer. Only after registration can a license be assigned to it from LicenseServer. This section describes how to register RaptorXML(+XBRL) Server with LicenseServer. Registering RaptorXML(+XBRL) Server (Windows) You can register RaptorXML(+XBRL) Server via its command line interface (CLI) by using the licenseserver command: RaptorXML Server: RaptorXML licenseserver Server-Or-IP-Address RaptorXML+XBRL Server: RaptorXMLXBRL licenseserver Server-Or-IP-Address For example, if LicenseServer is running on http://localhost:8088, then register RaptorXML(+XBRL) Server with: RaptorXML Server: RaptorXML licenseserver localhost RaptorXML+XBRL Server: RaptorXMLXBRL licenseserver localhost After successfully registering RaptorXML(+XBRL) Server, you can go to LicenseServer and assign a license to RaptorXML(+XBRL) Server. How to do this is described in the section Assign Licenses to Registered Products. Registering RaptorXML(+XBRL) Server (Linux) On Linux machines, RaptorXML(+XBRL) Server can be registered with LicenseServer by using the licenseserver command of the RaptorXML(+XBRL) Server CLI. Note that RaptorXML(+XBRL) Server must be started with root rights. sudo /opt/Altova/RaptorXMLServer2016/bin/raptorxmlserver licenseserver © 2016 Altova Gmb H Altova MapForce Server 2016 100 Altova MapForce Server 2016 Altova LicenseServer localhost sudo /opt/Altova/RaptorXMLXBRLServer2016/bin/raptorxmlxbrlserver licenseserver localhost In the command above, localhost is the name of the server on which LicenseServer is installed. Notice also that the location of the RaptorXML(+XBRL) Server executable is: /opt/Altova/RaptorXMLServer2016/bin /opt/Altova/RaptorXMLXBRLServer2016/bin After successfully registering RaptorXML(+XBRL) Server, you can go to LicenseServer and assign a license to RaptorXML(+XBRL) Server. How to do this is described in the section Assign Licenses to Registered Products. Next Steps After you have registered your Altova product with LicenseServer, do the following: 1. 2. If you have not already uploaded your license file/s to the LicenseServer (see previous section, Upload the license/s), upload the license file now and check that the license you want is active. If you have already done this, carry on to the next step, Assign Licenses. Assign a license to your Altova product that has been registered with the LicenseServer. Register MobileTogether Server To start MobileTogether Server, click the ServiceController icon in the system tray, hover over Altova MobileTogether Server in the menu that pops up (see screenshot below), and then select Start Service from the MobileTogether Server submenu. If MobileTogether Server is already running, the Start Service option will be disabled. Register MobileTogether Server via: The Settings tab of the MobileTogether Server Web UI: (i) Start MobileTogether Server via ServiceController (see previous point); (ii) Enter your password to access the Setup page; (iii) Select the LicenseServer name or address, and click Register with LicenseServer. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 101 its CLI, using the licenseserver command: MobileTogetherServer licenseserver [options] ServerName-Or-IP-Address For example, if localhost is the name of the server on which LicenseServer is installed: MobileTogetherServer licenseserver localhost After successful registration, go to the Server Management tab of LicenseServer's configuration page to assign a license to MobileTogether Server. Assign Licenses to Registered Products This section: Before assigning a license The Server Management tab Icons in the Server Management tab Note on cores and licenses Assigning a license Unregistering products from LicenseServer Before assigning a license Before you assign a license to an Altova product, make sure that: The relevant license has been uploaded to the license pool of LicenseServer and that the license is active. Your Altova product has been registered with LicenseServer. The Server Management tab Licenses are assigned in the Server Management tab of the LicenseServer Configuration page (screenshot below). The screenshot shows that three Altova products have been registered with LicenseServer. (Since MapForce Server and StyleVision Server are bundled with FlowForce Server, registering FlowForce Server with LicenseServer automatically also registers MapForce Server and StyleVision Server. No additional registration of the latter two products are required if FlowForce Server is registered.) © 2016 Altova Gmb H Altova MapForce Server 2016 102 Altova MapForce Server 2016 Altova LicenseServer Note the following points about the Server Management tab: Each product is listed under the name of its client machine. In the screenshot above, one client machine, named Doc.altova.com, is listed. This client machine (Doc.altova.com) has three Altova products registered with the LicenseServer. If an Altova product on a different client machine is registered with this LicenseServer, then that client machine, with its registered products, will also be listed in the Server Management tab. Each registered Altova product on a client machine has its own Key Code entry, which takes the key code of a license. A registered product's key code is assigned by clicking its Edit Assigned Licenses button (see icon list below) and selecting the required license from those available for that product (for example, FlowForce Server) in the license pool. This procedure is explained in more detail below. Each product also has a line stating how many CPU cores need to be licensed to run that product on that client. If the number of licensed cores is less than the number required, then the information is marked in red (see screenshot above). (The number of CPU cores that need to be licensed is the number of CPU cores on that client and is obtained from the client machine by LicenseServer.) If multiple versions of a single product (for example, StyleVision Server 2013 and StyleVision Server 2014) have been installed on one machine and if each of these installations has been registered with a single LicenseServer, then the multiple registrations are consolidated in a single registration in the Server Management tab and displayed as a single registration. When a license is assigned to this single registration, Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 103 all the installations indicated by that registration will be licensed. However, multiple instances of only one installation can be run simultaneously on the client machine. For example, multiple instances of StyleVision Server 2013 or multiple instances of StyleVision Server 2014 can be run simultaneously, but not one instance of StyleVision Server 2013 and one instance of StyleVision Server 2014. Note that newly installed versions must be registered for them to run. New versions of Altova server products can only be licensed with the latest version of LicenseServer at the time of the product's release. Older Altova server products will work with newer versions of LicenseServer. So, if you are installing a new version of an Altova server product and if your current LicenseServer version is not the latest, de-install the older version of LicenseServer and install the latest version. All registration and licensing information held in your older version of LicenseServer will be saved, at the time of deinstallation, to a database on the server, and will be imported automatically into the newer version. (The version number of the LicenseServer that is appropriate for any particular version of a server product is displayed during the installation of that server product. You can choose to install this version along with the server product. The version of the currently installed LicenseServer is given at the bottom of the LicenseServer configuration page.) Icons in the Server Management tab Edit Assigned Licenses. Available with each product. Pops up the Manage Licenses dialog, in which new licenses can be assigned to the product and already assigned licenses can be edited. Show Licenses. Appears with each license. Switches to the License Pool tab and highlights the selected license, so that license details can be read. Unregister This Product. Available with each product. The selected product (on the selected client machine) will be unregistered from LicenseServer. Note on cores and licenses The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. © 2016 Altova Gmb H Altova MapForce Server 2016 104 Altova MapForce Server 2016 Note: Altova LicenseServer Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client devices) that are allowed to connect to the MobileTogether Server at one time. Assigning a license To assign a license to a registered product, click the Edit Assigned Licenses button of that product. This pops up the Manage Licenses dialog (screenshot below). Note the following points about the licenses displayed in the Manage Licenses dialog: The product to be licensed is listed at the top left of the dialog. In the screenshot above the product is Altova RaptorXML+XBRL Server. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 105 The machine on which the server is installed (Doc.altova.com in the screenshot above) is listed next. The dialog displays all the currently active licenses for that product in the license pool. In our screenshot, there is one currently active RaptorXML+XBRL Server license in the license pool. (LicenseServer will automatically detect from each license in the pool the product for which it has been issued.) The license type can be either Cores (all Altova server products, including MobileTogether Server) or Users (MobileTogether Server only). The license type is shown in the License Type column. The license in the screenshot above has been licensed for 16 CPU cores. You need to know the number of processor cores on the server on which the Altova server product has been installed. If the machine has a dual-core processor, you need a twocore (the CPU Cores count) license. How many cores the registered server product requires is listed below the machine name. The license you assign to this server must be valid for a sufficient number of cores. Note that you can combine licenses to reach the required number of cores. So, if the machine's processor is octa-core (eight-core), you can combine two 4-core licenses. The Manage Licenses dialog will list only currently active licenses for that product. Licenses for other Altova products will not be listed. Licenses that have been assigned already—for example, to another installation of the product on the network—will have their check boxes checked. So only unchecked licenses may be selected. The CPU Cores (or # for MobileTogether Server users) column indicates for how many CPU cores (or MobileTogether Clients) a license is valid. If you wish to make modifications to the license pool—for example, to upload, activate, deactivate, or delete a license—click the Go to License Pool button. Select the license you wish to assign. The license's check box will be checked. Also, the total number of CPU cores licensed for that product on that client is listed near the top left of the dialog as Max licensed CPU cores (see screenshot above). You can select more licenses if you wish to increase the number of licensed CPU cores for that product on that client. The Max licensed CPU cores in this case will be the sum of the CPU cores of all the selected licenses. After selecting the license/s, click Apply Changes. The license/s will be assigned to that product and displayed in the Server Management tab (see screenshot below). The screenshot below shows that a 2-CPU-core license for Altova FlowForce Server has been assigned (to the client machine Doc.altova.com). Unregistering products Each Altova product registered with LicenseServer is listed in the Server Management tab under its client machine name and has an Unregister icon to its right. Click this icon to unregister the © 2016 Altova Gmb H Altova MapForce Server 2016 106 Altova MapForce Server 2016 Altova LicenseServer product. If a license was assigned to the product, the assignment will be terminated when the product is unregistered. To unregister all products, click the Unregister Server and All Products button at the bottom of the Server Management tab (see first screenshot in this section). To re-register a product, go to the product's pre-configuration page. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.7.7 Altova LicenseServer 107 Configuration Page Reference The LicenseServer Configuration page is the administrator's interface with LicenseServer (Web UI). It allows the management of LicenseServer and the licensing of Altova products that have been registered with LicenseServer (FlowForce Server, MapForce Server, StyleVision Server, RaptorXML(+XBRL) Server). The LicenseServer Configuration page is viewed in a web browser. How to open the Configuration page is described in the sections, Open LicenseServer Config Page (Windows) and Open LicenseServer Config Page (Linux). This section is a user reference for the Configuration page and is organized by the tabs of the Configuration page: License Pool Server Management Server Monitoring Settings Messages, Log Out For a step-by-step guide of how to assign licenses with LicenseServer, see the section How to Assign Licenses. License Pool This section: Uploading a license License status Activating, de-activating, and deleting a license Icons in the License Pool tab License information Note on cores and licenses The License Pool tab displays all the licenses that are currently on the LicenseServer (see screenshot below). When a license file is uploaded to the LicenseServer with the Upload button on this page, all the licenses contained in the license file are placed in the license pool on the server and are displayed on the License Pool page. The License Pool page displays information about all the licenses currently on the LicenseServer and thus provides a convenient overview of all Altova product licenses. On this page you can also activate, deactivate, and delete selected licenses. © 2016 Altova Gmb H Altova MapForce Server 2016 108 Altova MapForce Server 2016 Altova LicenseServer Uploading a license To upload a license file (which you receive from Altova GmbH for your Altova server product), click the Browse button, browse for the license file and select it. On clicking Upload, all the licenses contained in the license file are placed in the license pool and displayed on the License Pool page (screenshot above). License status License status values are as follows: Activating: When a license is uploaded into the license pool of LicenseServer, the server will transmit license-related data to the altova.com master licensing server to validate, authenticate, and activate the license that was supplied. This is necessary to ensure compliance with the Altova license agreements. During this initial activation and authentication transaction—which typically lasts between 30 seconds and a couple of minutes, depending on your Internet connection, speed, and overall network traffic—the status of the license will be indicated as Activating.... Failed Verification: If a connection with the altova.com master licensing server cannot be made, then the status of the license in the pool will be shown as Failed Verification. If this happens, check your Internet connection and firewall rules to ensure that LicenseServer is able to communicate with the altova.com master licensing server. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 109 Active: Once the license has been authenticated and activated, the status in the pool will change to Active. Inactive: If a license has been verified, but is present on another LicenseServer on the network, the status in the pool will be shown as Inactive. An Inactive status also results when a license is manually deactivated in the license pool by the administrator. Pending: If the start date of a license is a date in the future, then the license is shown as Pending. The status will change to Active on the start date. A Pending license can be assigned to a product and ensures that the licensing of a product continues uninterrupted before an existing license expires. (A product is allowed to have two active licenses assigned to it at a given time.) Block ed: A license is shown in the license pool as Block ed if there was a problem authenticating the license and the altova.com master licensing server has not granted permission to the LicenseServer to use this license. This could be the result of a license agreement violation, over-usage of a license, or other compliance issues. Should you see a license showing up as Block ed, please contact Altova Support with your license information and any other relevant data. These statuses are summarized in the table below: Status Meaning Activating... On upload, license information is sent to altova.com for verification. Refresh the browser to view the updated status. Verification and activation can take a few minutes. Failed Verification A connection to altova.com could not be made. After establishing a connection, either restart the service or activate the license (with the Activate button). Active Verification was successful, the license is active. Inactive Verification was successful, but the license is on another LicenseServer on the network. Licenses can be made inactive with the Deactivate button. Pending A Pending license has a start date in the future, and it turns Active on that start date. It can be assigned to a product and ensures the automatic renewal of a product's licensing before an existing license expires. Block ed Verification was not successful. License is invalid and is blocked. Contact Altova Support. Note: After a license has been sent to altova.com for verification, the browser must be refreshed to see the updated status. Verification and activation can take a few minutes. Note: If a connection to altova.com could not be made, the status will be Failed Verification. After establishing a connection, either restart the service or try activating the license with the Activate button. Note: When a license is given a status of Inactive or Block ed, a message explaining the status © 2016 Altova Gmb H Altova MapForce Server 2016 110 Altova MapForce Server 2016 Altova LicenseServer is also added to the Messages log. Only an active or pending license can be assigned to a product installation. An inactive license can be activated or deleted from the license pool. If a license is deleted from the license pool, it can be uploaded again to the pool by uploading the license file containing it. When a license file is updated, only those licenses in it that are not already in the pool will be uploaded to the pool. To activate, deactivate, or delete a license, select it and then click the Activate, Deactivate, or Delete button, respectively. Connection to the Master Licensing Server at altova.com The Altova LicenseServer needs to be able to communicate with the Master Licensing Server at altova.com to validate and authenticate license-related data and to ensure continuous compliance with the Altova license agreements. This communication occurs over HTTPS using port 443. If the Altova LicenseServer, after making the initial verification with the altova.com Master Licensing Server, is unable to again connect with altova.com for a duration of more than 5 days (= 120 hours), then the Altova LicenseServer will no longer permit the usage of any Altova software products connected to the Altova LicenseServer. Any such loss of connection with the altova.com master servers will be logged in the Messages tab of the Configuration page of the Altova LicenseServer. In addition, the administrator can configure the Altova LicenseServer to automatically send an alert email when the connection to altova.com is lost. Alert Mail settings are available in the Settings tab of the Configuration page. Activating, deactivating, and deleting a license An active license can be deactivated by selecting the license and clicking Deactivate. An inactive license can be activated (Activate button) or deleted (Delete button). When a license is deleted it is removed from the license pool. A deleted license can be added again to the license pool by uploading the license file containing it. If a license file is re-uploaded, only licenses that are not already in the license pool will be added to the license pool; licenses that are already in the pool will not be re-added. Icons in the License Pool tab Edit Assigned Licenses. Appears with each license (in the Assignments column). Pops up the Manage Licenses dialog, in which new licenses can be assigned to the product and already assigned licenses can be edited. Show License Information. Appears with each license (in the Assignments column). Provides information about the currently active clients. License information Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 111 The following license information is displayed: Status: Can be one of the following values: Failed Verification | Activating | Active | Inactive | Block ed. See License status above. Name, Company: The name and company of the licensee. This information was submitted at the time of purchase. Product, Edition, Version: The version and edition of the licensed products. Key, Expires in days, SMP (days left): The license key to unlock the product, and the number of days left before the license expires. Each licensed purchase comes with a Support & Maintenance Package, which is valid for a certain number of days. The SMP column notes how many SMP days are still left. #, License Type: The number of users or CPU cores that the license allows is listed in the # column. Whether it is users or cores that the license regulates is given in the License Type column. In the case of Altova's MobileTogether Server product, licenses are also assigned on the basis of the number of MobileTogether client devices that connect to MobileTogether Server: the users of the server. In the case of all other Altova server products, licenses are assigned on the basis of CPU cores only (see note below). Assignments: Access to editing dialogs and information of individual licenses. Note on cores and licenses The licensing of Altova server products is based on the number of processor cores available on the product machine (for MobileTogether Server an additional licensing option is available; see below). For example, a dual-core processor has two cores, a quad-core processor four cores, a hexa-core processor six cores, and so on. The number of cores licensed for a product must be greater than or equal to the number of cores available on that server machine, whether the server is a physical or virtual machine. For example, if a server has eight cores (an octa-core processor), you must purchase at least one 8-core license. You can also combine licenses to achieve the core count. So, two 4-core licenses can also be used for an octa-core server instead of one 8-core license. If you are using a computer server with a large number of CPU cores but only have a low volume to process, you may also create a virtual machine that is allocated a smaller number of cores, and purchase a license for that number. Such a deployment, of course, will have less processing speed than if all available cores on the server were utilized. Note: Each license can be used for only one client machine at a time, even if the license has unused licensing capacity. For example, if a 10-core license is used for a client machine that has 6 CPU cores, then the remaining 4 cores of licensing capacity cannot be used simultaneously for another client machine. MobileTogether Server licenses Two types of MobileTogether Server license are available. Customers can select a license type that best suits their requirements. Core licenses: These are assigned to MobileTogether Servers on the basis of the cores on the server machine; see the explanation above. An unlimited number of MobileTogether Client devices can then connect to the server. User licenses: These specify the maximum number of users (MobileTogether Client © 2016 Altova Gmb H Altova MapForce Server 2016 112 Altova MapForce Server 2016 Altova LicenseServer devices) that are allowed to connect to the MobileTogether Server at one time. Server Management This section: Icons in the Server Management tab Assigning licenses One client machine under different names Requesting an evaluation license Unregistering products In the Server Management tab (screenshot below), you can assign licenses to registered products. Note the following points about the Server Management tab: Each product is listed under the name of its client machine. In the screenshot above, one Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 113 client machine, named Doc.altova.com, has three Altova products registered with the LicenseServer. If an Altova product on a different client machine is registered with this LicenseServer, then that client machine, with its registered products, will also be listed in the Server Management tab. Each registered Altova product on a client machine has its own Key Code entry, which takes the key code of a license. A registered product's key code is assigned by clicking its Edit Assigned Licenses button and selecting the required license from those available for that product (for example, FlowForce Server) in the license pool. This procedure is explained in more detail below. Each product also has a line stating how many CPU cores need to be licensed to run that product on that client. If the number of licensed cores is less than the number required, then the information is marked in red (see screenshot above). (The number of CPU cores that need to be licensed is the number of CPU cores on that client and is obtained from the client machine by LicenseServer.) For Altova's MobileTogether Server, licensing is by user (client devices that access the server) and not by CPU core. Single thread execution If a product license for only one core is available in the license pool, a machine with multiple cores can be assigned this one-core license. In such a case, the machine will run that product on a single core. Processing will therefore be slower as multi-threading (which is possible on multiple cores) will not be available. The product will be executed in single thread mode on that machine. To assign a single-core license to a multiple-core machine, select the Limit to single thread execution check box for that product. Icons in the Server Management tab Edit Assigned Licenses. Available with each product. Pops up the Manage Licenses dialog, in which new licenses can be assigned to the product and already assigned licenses can be edited. Show Licenses. Appears with each license. Switches to the License Pool tab and highlights the selected license, so that license details can be read. Unregister This Product. Available with each product. The selected product (on the selected client machine) will be unregistered from LicenseServer. Assigning a license To assign a license to a registered product, click the Edit Assigned Licenses button of that product. This pops up the Manage Licenses dialog (screenshot below). © 2016 Altova Gmb H Altova MapForce Server 2016 114 Altova MapForce Server 2016 Altova LicenseServer Select the license you wish to assign. After selecting the license/s, click Apply Changes. The license/s will be assigned to that product and displayed in the Server Management tab (see screenshot below). Note: Licenses for Altova's MobileTogether Server are also issued on the basis of the number of users (that is, client devices that connect to the server). For this kind of license, the maximum number of users that can access the server at any one time is listed (see screenshot below). One client machine under different names If a client machine is registered more than once with LicenseServer, it might appear in the Server Management tab under multiple names, that is, with multiple entries. This could happen, for Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 115 example, if a machine is re-registered with the host name given in a different form. To ensure that additional licenses are not redundantly assigned to the same machine under its different names, you should unregister redundant client machine entries by clicking the Unregister server and all products button of these machines. (Note: While the client machines are considered for the purposes of this documentation to be clients of LicenseServer, they are in effect servers of their own products.) Also, if the same license is assigned multiple times to the same machine under its different names, licensing conflicts could arise. So, to avoid these two situations (redundant licensing and multiple assignments of a single license), it is recommended that redundant entries of a single client machine be unregistered. Given below are forms a machine name might take in the Server Management tab: Host name with domain name (the fully qualified domain name, FQDN), such as: "win80x64_1.my.domain.com" or "Doc3.my.domain.com". This happens when the host name of the machine (with or without the domain information) is passed as the argument of the licenseserver CLI command that is used to register the server product with LicenseServer. For example: <AltovaServerProduct> licenseserver Doc3. This produces an FQDN such as: Doc3.my.domain.com. An FQDN is also produced when localhost is supplied on Windows 7 systems as the host name. Host name without domain name. For example: "win80-x64_1" or "Doc3". This happens on Windows 8 systems when localhost is given as the machine name. localhost. In some cases, localhost is also displayed as a machine name. Note: If, during installation of the Altova server product on Windows machines, the machine is automatically registered with LicenseServer, localhost is used by the installer as the machine name. Requesting an evaluation license You can obtain a 30-day free evaluation license for each of a client's installed Altova products that have been registered with LicenseServer. Click the Request Evaluation Licenses button near the bottom of the Server Management tab. A dialog pops up containing a list of the Altova server products (on that client machine) which have been registered with LicenseServer. Make sure that the products for which you want an evaluation license are checked, then fill in the registration fields, and send the request. You will receive an e-mail from Altova containing the 30-day evaluation license/s. The number of cores for which the license will be valid per product will be exactly the number required by the product at the time the request is sent. Save the license/s to disk and upload to the license pool. Unregistering products Each Altova product registered with LicenseServer is listed in the Server Management tab under its client machine name and has an Unregister icon to its right. Click this icon to unregister the © 2016 Altova Gmb H Altova MapForce Server 2016 116 Altova MapForce Server 2016 Altova LicenseServer product. If a license was assigned to the product, the assignment will be terminated when the product is unregistered. To unregister all products, click the Unregister Server and All Products button at the bottom of the Server Management tab (see first screenshot in this section). To re-register a product with LicenseServer, go to the product's Setup page or its CLI and register it. See: Register FlowForce Server, Register MapForce Server, Register StyleVision Server, and Register RaptorXML(+XBRL) Server. For more information, see the section, Assigning Licenses to Registered Products. Server Monitoring The Server Monitoring tab provides an overview of servers currently running licensed Altova products. It contains product information along with information about users and licenses. Note: Failover LicenseServers work with client applications that are v2015rel3 or later; older clients are flagged. Settings This section: Failover LicenseServer settings Network settings Alert Mail settings Miscellaneous settings The Settings tab is described below. You can set the following: The password for logging in to LicenseServer. Enter the desired password and click Change Password. Test connectivity to Altova by clicking Test Connection to Altova. Note that you must save new settings (by clicking the Save button at the bottom of the pane) before testing the connection. The Test Connection to Altova button is disabled while the test is in progress, and becomes enabled again when the test has been completed. A second LicenseServer can be configured to take over from the Primary LicenseServer if the Primary LicenseServer becomes unavailable. This second LicenseServer is called the Failover LicenseServer. How to specify its settings are described here. Network settings for the web-based configuration page (Web UI), for the proxy server used to connect to the Internet (if any), and for License Service availability. These settings are described in Network settings below. Email server settings and the alert mail recipient to contact in the event of a significant Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 117 LicenseServer occurrence. These settings are described in Alert Mail settings below. After you change a setting, click Save at the bottom of the pane. A changed setting will not take effect till it is saved. Failover LicenseServer settings A second LicenseServer can be configured to take over from the Primary LicenseServer if the Primary LicenseServer becomes unavailable. This second LicenseServer is called the Failover LicenseServer. To set up a LicenseServer as the Failover LicenseServer, do the following: 1. 2. 3. Install LicenseServer as described in the Installation section. Set the LicenseServer's mode to Failover LicenseServer by selecting the corresponding radio button (see screenshot above). (By default the LicenseServer Mode is set to Primary LicenseServer.) In the Find Primary LicenseServer dialog that appears (screenshot below), enter the Primary LicenseServer you want to back up with this Failover LicenseServer. You can do this in one of two ways: (i) Click Search for LicenseServers and then select, in the combo box, the LicenseServer you want to backup from the list of found LicenseServers; © 2016 Altova Gmb H Altova MapForce Server 2016 118 Altova MapForce Server 2016 Altova LicenseServer (ii) Click Manually Enter Address, and enter the address of the LicenseServer you want to backup. After entering the Primary LicenseServer, click Connect to Primary LicenseServer. 4. A confirmation dialog appears, asking you to confirm that you wish to set the current LicenseServer as the Failover LicenseServer (of the Primary LicenseServer you have just selected). Click Yes if you wish to confirm. Note that going ahead with the confirmation will remove any installed licenses and registered clients on the current LicenseServer. Once a Failover LicenseServer has been configured, both the Primary LicenseServer and Failover LicenseServer will have notifications about their respective modes at the top of the Configuration Page. In the two screenshots below, the Failover LicenseServer is shown first, then the Primary LicenseServer. Note the following points: After a Failover LicenseServer has been configured, it periodically synchronizes all licenses, registered clients, and license agreements from the Primary. If the Primary becomes unavailable, then the Failover takes over the role of LicenseServer. Once the Primary becomes available again, the Primary retakes control from the Failover. Any license-related modifications made on the Failover in this period will be lost when the Primary regains control. The Failover LicenseServer will provide licenses only to clients that are of version 2015 rel 3 or later. Older clients are flagged as such in the Server Monitoring tab of the Primary LicenseServer (screenshot below). We recommend that you upgrade your client applications to version 2015 rel 3 or later if you wish to use the Failover LicenseServer feature. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 119 Network settings Administrators can specify network access points to the LicenseServer configuration page and to LicenseServer. Web UI: Allowed IP addresses can vary from all interfaces and IP addresses on that machine to a fixed address, and ports can be either dynamically calculated or fixed. This allows a wide range of allowed IP-Address:Port settings. The default port setting is 8088. Proxy Server (available from v1.3 onwards): If a proxy server is being used to connect to the Internet, the details of the proxy server must be entered in the Proxy Server pane (see screenshot above). Otherwise, the proxy server settings can be left blank. To configure LicenseServer to use a proxy server, enter the proxy server's host name, and, if required, a port number. If the proxy server does not need authentication, then the User Name and Password fields can be left blank. License Service: The machine on which License Server is installed can be connected to multiple networks via one or more network interfaces. On each network, the License Server machine is known by a host name and an IP address. The License Service setting lets you configure on which networks the license service is available. The localhost option allows the service on the local machine only. If you list hostnames and/or IP © 2016 Altova Gmb H Altova MapForce Server 2016 120 Altova MapForce Server 2016 Altova LicenseServer addresses, use a comma-separated list without any spaces (for example: hostname1,IPAddress1,hostname2).The port number of the service is fixed at 35355. The default settings allow unrestricted access to LicenseServer and its configuration page from within the networks to which LicenseServer is connected. If you wish to restrict access to either LicenseServer or its configuration page, enter the appropriate settings and click Save. Run a connectivity test (see above) to check that the settings are correct. Alert Mail settings Altova LicenseServer needs to be connected to the altova.com server. If the connection is broken for more than 24*5 hours (5 days), LicenseServer will not allow licenses. As a result, work sessions with Altova products licensed by LicenseServer could be disrupted. In order to alert the administrator that a connection is broken, an alert mail can be sent to an email address. The Alert Mail pane (see screenshot below) is where you enter settings for sending alert mails to an administrator's email address. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Altova LicenseServer 121 SMTP Host and SMTP Port are the access details of the email server from which the email alert will be sent. User Authentication and User Password are the user's credentials for accessing the email server. The From field takes the address of the email account from which the email will be sent. The To field takes the recipient's email address. Click Save when done. After saving the Alert Mail settings, email alerts will be sent to the address specified whenever a significant event occurs, such as when connection to altova.com is lost. Note that such events are also recorded in the Messages tab, and can be looked up there. Miscellaneous settings Show hints for receiving and deploying evaluation licenses Checking this box (see screenshot above) displays, at the top of the configuration page, brief instructions about how to evaluate and deploy evaluation licenses. © 2016 Altova Gmb H Altova MapForce Server 2016 122 Altova MapForce Server 2016 Altova LicenseServer Send a warning email if contact with a running product is lost A warning message is sent from the From address to the To address if a connection with a product that is licensed and running is lost. Messages, Log Out The Messages tab displays all messages relevant to licenses in the license pool of the LicenseServer. Each message has a Delete button that allows you to delete that particular message. The Log Out tab serves as the Log Out button. Clicking the tab logs you out immediately and then displays the Login mask. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.7.8 Altova LicenseServer 123 Password Reset If you forget your LicenseServer password, you can use the passwordreset command from the CLI to reset the password to default. 1. 2. 3. 4. Open a command line window. Change to the directory where the LicenseServer application package or executable is installed. Enter the command: licenseserver passwordreset This resets the LicenseServer administrator password to default. You can now log in to the Administrator Web UI with the password default. © 2016 Altova Gmb H Altova MapForce Server 2016 124 Altova MapForce Server 2016 1.8 Digital Certificate Management Digital Certificate Management Digital certificate management is an integral part of secure data exchange between a client computer and a Web server. Since mappings can be executed not only on Windows by MapForce, but also on a Windows, Linux or Mac server by MapForce Server (either standalone or in FlowForce Server execution), this section deals with managing HTTPS certificates on various platforms. In the context of secure HyperText Transport Protocol (HTTPS), it is important to distinguish between server and client certificates. Server certificates A server certificate is what identifies a server as a trusted entity to a client application such as MapForce. The server certificate may be digitally signed by a commercial Certificate Authority, or it may be self-signed by your organization. In either case, while designing the mapping in MapForce, you can specify the following settings: Whether the server certificate must be checked. Whether the request must proceed if a mismatch has been detected between the name certificate and the name of the host. These settings are available on the HTTP Security Settings dialog box of MapForce. When you enable server certificate checks, consider the following: If you are calling a Web server whose certificate is signed by a trusted Certificate Authority, your operating system will likely be already configured to trust the server certificate, and no additional configuration is necessary. If you are calling a Web server which provides a self-signed certificate (for example, a local network server within your organization), you will need to configure your operating system as well to trust that certificate. In most cases, you can check the level of trust between your operating system and the Web server by typing the URL of the Web service in the browser's address bar. If the server is not trusted, or if your operating system is not configured to trust the server, your browser will display a message such as "This connection is untrusted", or "There is a problem with this website's certificate". Note that you cannot use the browser to check the level of trust with a Web server if the browser uses a certificate database other than that of the operating system (for example, Firefox 35.0.1 on Ubuntu 14.04). On Windows, you can establish trust with the server by following the browser's instructions and importing or installing the required certificates into your system's Trusted Root Authorities store (see Trusting Server Certificates on Windows ). On Mac, you can do the equivalent operation in Safari (see Trusting Server Certificates on Mac ). For instructions applicable to Linux, see Trusting Server Certificates on Linux. Client certificates While server certificates are used to identify a server as a trusted entity, client certificates are primarily used to authenticate the caller against the Web server. If you intend to call a Web server which requires client certificates, you may need to contact the administrator of the Web server for the client configuration instructions. Taking IIS (Internet Information Services) as an example, the Web server may be configured to handle HTTPS and client certificates in one of the following Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Digital Certificate Management 125 ways: Require HTTPS and ignore client certificate Require HTTPS and accept client certificate Require HTTPS and require client certificate The success or failure of the Web service request depends both on the configuration of the Web server and the client application. For example, if the Web server is configured to require a client certificate, then, for the call to be successful, the calling application must present a valid client certificate. From a MapForce perspective, the same is true for mappings which include Web service calls through HTTPS. In particular, to run such mappings successfully, it is assumed that the Web server has been configured to accept or require the client certificate, and that the operating system where the mapping runs provides the correct client certificate to the Web server. The diagram below illustrates a scenario where a client certificate used in MapForce is transferred to a Linux server running MapForce Server. Once the certificate has been transferred to the target operating system, MapForce Server can use it to authenticate itself against the Web server and execute the mapping successfully. Deploying mappings with client certificates to another computer For HTTPS authentication in Web service calls, MapForce is capable of using Transport Layer Security (TLS) on top of HTTP, which is the successor of Secure Sockets Layer (SSL) protocol. Note that fallback to SSL may occur if either the client implementation or the server does not support TLS. To support Web calls with client certificate authentication on multiple platforms, MapForce (and MapForce Server) relies on the certificate management implementation of each platform, thus ensuring that certificate management is always in the scope of the underlying operating system. Each operating system provides different support for certificate management, as shown in the table below. © 2016 Altova Gmb H Altova MapForce Server 2016 126 Altova MapForce Server 2016 Digital Certificate Management Platform Certificate management and implementation Windows On Windows, you can manage certificates using the Certificate snap-in (see Accessing the Certificate Stores on Windows). TLS support is available through the Secure Channel (also known as SChannel) library. Linux On Linux, you can manage certificates using the OpenSSL (openssl) command line tool and library. If OpenSSL support is not already available on the Linux machine where MapForce Server is installed, you will need to download and install it before you can manage certificates. TLS support is available through the OpenSSL library (https:// www.openssl.org/). Mac On Mac, you can manage certificates using the Keychain Access Manager, located under Finder > Applications > Utilities. TLS support is provided by the Secure Transport library native to the operating system. If you execute the mapping on a Windows operating system where you can already successfully consume the same Web service that you intend to call from MapForce, no additional certificate configuration is normally required (for the conditions to run the mapping successfully on Windows, see Client Certificates on Windows). However, if you design mappings with MapForce on a Windows computer, and then deploy them to another computer (which may run a different operating system), the client certificate is not stored or copied together with the deployed package. For the Web service call (and the mapping) to execute successfully, the client certificate must exist on the target operating system as well. To transfer a certificate from a Windows system to another Windows-based computer, export the required certificate (with private key) from the source system (see Exporting Certificates from Windows). Then import the same certificate to the Current User\Personal store on the target operation system (see Client Certificates on Windows). For instructions on how to transfer client certificates to the Linux and Mac platforms, see Client Certificates on Linux and Client Certificates on Mac, respectively. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.8.1 Digital Certificate Management 127 Trusting Server Certificates on Linux To establish trust with a Web server on Linux, obtain the certificate file of the Web server, copy it to the system's certificate store, and then update the latter (see instructions below). One of the ways to obtain the server certificate is by using the Firefox browser, as shown in the example below. Perform the following steps only if you are sure of the authenticity of the Web server certificate. Debian, Ubuntu 1. Copy the certificate file of the Web server to the following directory. sudo cp /home/downloads/server_cert.crt /usr/local/share/cacertificates/ 2. Update the certificate store as follows: sudo update-ca-certificates Cent OS 1. Install the ca-certificates package: yum install ca-certificates 2. Enable the dynamic certificate authority configuration feature: update-ca-trust enable 3. Copy the server certificate to the following directory: cp server_cert.crt /etc/pki/ca-trust/source/anchors/ 4. Use the command: update-ca-trust extract Example: Exporting the certificate of the Web server with Firefox on Ubuntu 1. 2. Run Firefox and access the URL of the Web server. When prompted with the message "This connection is untrusted", click Add Security Exception. © 2016 Altova Gmb H Altova MapForce Server 2016 128 Altova MapForce Server 2016 3. 4. Digital Certificate Management Click View. Click the Details tab. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 5. Digital Certificate Management 129 Click Export and save the certificate file to a local directory. © 2016 Altova Gmb H Altova MapForce Server 2016 130 Altova MapForce Server 2016 1.8.2 Trusting Server Certificates on Mac Digital Certificate Management To establish trust with a Web server using Safari: Perform the following steps only if you are sure of the authenticity of the Web server certificate. 1. 2. In the browser address bar, enter the HTTPS address of the Web server. When prompted to connect to the website, click Show Certificate. 3. 4. Select the option Always trust {certificate} when connecting to {website}. Click Continue and enter your password when prompted. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.8.3 Digital Certificate Management 131 Trusting Server Certificates on Windows To establish trust with a Web server using Internet Explorer 11: Perform the following steps only if you are sure of the authenticity of the Web server certificate. 1. 2. 3. In the browser address bar, enter the HTTPS address of the Web server. Click Continue to this website (not recommended). Click the Certificate error area, and then click View certificates. 4. Click Install Certificate. 5. Click Next. © 2016 Altova Gmb H Altova MapForce Server 2016 132 Altova MapForce Server 2016 6. Digital Certificate Management Choose to select a store manually. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Digital Certificate Management 7. Browse for the Trusted Root Certification Authorities, and then click OK. 8. When prompted to confirm your action, click OK. © 2016 Altova Gmb H 133 Altova MapForce Server 2016 134 Altova MapForce Server 2016 1.8.4 Accessing the Certificate Stores on Windows Digital Certificate Management On Windows, you can manage certificates either from the Certificates Microsoft Management Console (MMC) snap-in, or from Internet Explorer. To open the Certificates snap-in (for the current Windows user): Run certmgr.msc at the command line. To open the certificate management dialog box in Internet Explorer: 1. On the Tools menu, click Internet Options. 2. Click the Content tab, and then click Certificates. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.8.5 Digital Certificate Management 135 Exporting Certificates from Windows For mappings that call Web services through HTTPS and are deployed to a Mac or Linux server running MapForce Server or FlowForce Server, the same client certificate must be available on the non-Windows operating system as the one used on Windows to design and test the mapping. To execute such mappings on a non-Windows operating system with MapForce Server, export the required certificate with private key from Windows and then import it into the target operating system. To export a certificate with private key from Windows: 1. 2. 3. 4. On Windows, open the Certificates snap-in (see Accessing the Certificate Stores on Windows). Right-click the certificate that you want to export, point to All Tasks, and then click Export. Click Next. Choose to export from Windows the certificate together with its private key, and then click Next. © 2016 Altova Gmb H Altova MapForce Server 2016 136 Altova MapForce Server 2016 5. Digital Certificate Management Choose the Personal Information Exchange - PKCS #12 (.pfx) file format, and then click Next. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 Digital Certificate Management 137 Note: Make sure not to select the option Delete the private key if the export is successful, otherwise you will not be able to make use of the certificate after it is exported. 6. Enter a password, and then click Next. You will need this password after you copy the certificate to the target operating system. © 2016 Altova Gmb H Altova MapForce Server 2016 138 Altova MapForce Server 2016 7. Digital Certificate Management Browse for the location of the file to export, and then click Next. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 8. Digital Certificate Management 139 Click Finish. © 2016 Altova Gmb H Altova MapForce Server 2016 140 Altova MapForce Server 2016 Altova MapForce Server 2016 Digital Certificate Management © 2016 Altova Gmb H Altova MapForce Server 2016 1.8.6 Digital Certificate Management 141 Client Certificates on Linux If your mappings include Web service authentication through HTTPS by means of client certificates, follow these steps to deploy such mappings to a Linux machine running MapForce Server: 1. 2. 3. In the HTTP Security Settings dialog box, click Client Certificate, and then select the required certificate from the Current User\Personal store on Windows . Save and deploy the mapping to the target operating system. Transfer the client certificate required by the Web service call to the target operating system. Make sure that the certificate has a private key, and that the Enhanced Key Usage property of the certificate includes "Client authentication" as purpose. To transfer the client certificate to Linux: 1. 2. 3. Export the client certificate with private key from Windows, in the Personal Information Exchange - PKCS #12 (.pfx) file format (see Exporting Certificates from Windows). Copy the certificate file to the Linux machine. Convert the .pfx file to .pem format using the command: openssl pkcs12 -in cert.pfx -out "John Doe.pem" -nodes This command parses the .pfx file and outputs a .pem file, without encrypting the private key. Certificates with an encrypted private key prompt for password and are not supported in server execution. Executing the mapping To instruct MapForce Server to use the .pem file as client certificate, set the -certificatespath parameter when running the mapping. The --certificatespath parameter defines the path of the directory where all certificates required by the current mapping are stored. For example, if the certificate file path is /home/John/John Doe.pem, then --certificatespath must be set to /home/John. By default, if the --certificatespath parameter is not provided, MapForce Server looks for certificates in the directory $HOME/.config/altova/certificates of the current user. For the mapping to execute successfully, the certificate file is expected to have the .pem extension and the file name must match the Common Name (CN) of the certificate, including spaces (for example, John Doe.pem). If the CN contains a forward slash ( / ), it must be replaced with an underscore ( _ ) character. If you intend to execute the mapping as a FlowForce Server job, copy the certificate file to the $HOME/.config/altova/certificates directory. When running the job, FlowForce Server will use this directory to look for any certificate files required by the mapping. For security considerations, make sure that certificate files are not readable by other users, since they contain sensitive information. © 2016 Altova Gmb H Altova MapForce Server 2016 142 Altova MapForce Server 2016 1.8.7 Client Certificates on Mac Digital Certificate Management If your mappings include Web service authentication through HTTPS client certificates, follow these steps to deploy such mappings to a OS X running MapForce Server: 1. 2. 3. 4. In the HTTP Security Settings dialog box of MapForce, click Client Certificate, and then select the required certificate. If the certificate name does not match exactly the host name of the server, select Allow name mismatch between certificate and request. Save and deploy the mapping to the target operating system . Transfer the client certificate required by the Web service call to the target operating system. Make sure that the certificate has a private key, and that the Enhanced Key Usage property of the certificate includes "Client authentication" as purpose. To transfer the client certificate to Mac: 1. 2. 3. 4. 5. 6. Export the client certificate with private key from Windows, in the Personal Information Exchange - PKCS #12 (.pfx) file format (see Exporting Certificates from Windows) and copy the .pfx file to the Mac. If this hasn't been done already, make sure that the operating system trusts the server certificate (see Trusting Server Certificates on Mac OS ). Run Keychain Access from Finder > Applications > Utilities. On the File menu, click Import Items. Browse for the the client certificate exported from Windows in step 1 and select a destination keychain. Click Open and enter the password with which the certificate was encrypted. Executing the mapping You are now ready to run the mapping using the MapForce Server run command. Note the following: If you execute the mapping remotely through SSH, first unlock the keychain with the security unlock-keychain command. If you execute the mapping through the Mac OS graphical user interface, when prompted to allow MapForce Server access to the keychain, click Allow. Altova MapForce Server 2016 © 2016 Altova Gmb H Altova MapForce Server 2016 1.8.8 Digital Certificate Management 143 Client Certificates on Windows When you run on Windows a mapping which requires client certificates, the conditions to run the mapping successfully are as follows: The client certificate must exist in the Current User\Personal certificate store (also referred to as the My store). For the certificate to exist in this store, it must be imported through the Certificate Import Wizard. For instructions, see http:// windows.microsoft.com/en-us/windows/import-export-certificates-privatekeys#1TC=windows-7. The certificate must have a private key. The Enhanced Key Usage property of the certificate must include "Client authentication" as purpose. In the current version of MapForce, due to a limitation of the library used by MapForce, Windows will select the required certificate automatically from the certificate store when you run the mapping. The mapping will execute successfully if, after filtering the Current User\Personal certificate store, the server finds a suitable certificate. Note that the HTTPS authentication (and the certificate selection operation) is managed by Windows and is not controlled by MapForce or MapForce Server. In some cases, if multiple certificates exist in the Current User\Personal © 2016 Altova Gmb H Altova MapForce Server 2016 144 Altova MapForce Server 2016 Digital Certificate Management store, an unsuitable certificate may be selected automatically by the operating system, which causes the mapping execution to fail. This situation can be avoided by limiting the number of certificates available in the Current User\Personal store. Altova MapForce Server 2016 © 2016 Altova Gmb H Index Index 145 E exportresourcestrings command, 38 A Administrator interface, 107 Alert emails, 116 Altova LicenseServer, (see LicenseServer), 69 Altova ServiceController, 77 Assigning licenses, 101, 112 C Command line usage, 27 Commands, exportresourcestrings, 38 help, 42 licenseserver, 29 run, 35 setdeflang, 40 Configuration page, 107 opening on Linux, 83 opening on M ac OS X, 85 opening on Windows, 80 URL of, 80 URL of (Linux), 83 URL of (M ac OS X), 85 D Default password, 80 Digital certificates, exporting from Windows, 135 in M apForce mappings, 124 managing on Windows, 134 transferring to Linux, 141 transferring to M ac, 142 trusting on Linux, 127 trusting on M ac, 130 trusting on Windows, 131 © 2016 Altova GmbH F FlowForce Server, registering with LicenseServer, 90 H help command, 42 HTTPS, calling Web services through, 124 I Installation on Linux, 14 Installation on Mac OS X, 21 Installation on Windows, 8 L License Pool, 87, 107 Licenses, assigning, 101, 112 uploading, 87, 107 LicenseServer, Configuration page, 107 installation on M ac OS X, 76 installation on Windows, 72, 74 interface with, 107 registering FlowForce Server with, 90 registering M apForce Server with, 95 registering StyleVision Server with, 97 settings, 116 starting, 79 steps for assigning licenses, 78 licenseserver command, 29 146 LicenseServer configuration page, (see Configuration page), 80, 83, 85 Licensing on Linux, 17 Licensing on Mac OS X, 24 Licensing on Windows, 10 Linux, executing mappings with Web service calls through HTTPS, 141 installation on, 14 licensing on, 17 transferring client certificates to, 141 trusting server certificates on, 127 Localization, 38, 40 Logout, 122 M Mac, executing mappings with Web service calls through HTTPS, 142 transferring client certificates to, 142 trusting server certificates on, 130 Index Registering MapForce Server with LicenseServer, 95 Registering StyleVision Server with LicenseServer, 97 run command, 35 S Server Management tab, 101, 112 Server Monitoring tab, 116 ServiceController, 77 setdeflang command, 40 Settings, 116 Setup, on Linux, 13 on M ac OS X, 20 on Windows, 7 StyleVision Server, registering with LicenseServer, 97 U Mac OS X, installation on, 21 licensing on, 24 Uploading licenses, 87, 107 MapForce Server, registering with LicenseServer, 95 W Messages, 122 N Network information, 71 Network settings, 116 Web services, calling through HTTPS, 124 Windows, executing mappings with Web service calls through HTTPS, 143 installation on, 8 licensing on, 10 trusting server certificates on, 131 P Password, default at startup, 80 R Registering FlowForce Server with LicenseServer, 90 © 2016 Altova GmbH