World Map
Java Service Wrapper is the easiest way to make your product more reliable.
  • Free Trial
  • Buy Now
License Key Properties

License Key Properties Overview

Standard and Professional Editions of the Java Service Wrapper are activated by a set of License Keys. The License Keys are required to be set in the License Key Property included as part of the Wrapper's configuration file.

License key property list

Each type of License Key property is described below in detailed (Server License Key, Development License Key).

  • wrapper.license.debug
  • wrapper.license.dev_application
  • wrapper.license.features
  • wrapper.license.host_id
  • wrapper.license.id
  • wrapper.license.key.<n>
  • wrapper.license.lease_term.begin_date
  • wrapper.license.lease_term.end_date
  • wrapper.license.licensee
  • wrapper.license.type
  • wrapper.license.upgrade_term.begin_date
  • wrapper.license.upgrade_term.end_date

Problems?

If you encounter any licensing problems, please set the wrapper.license.debug property and enable include file debugging. In combination, most configuration problems become obvious.

Server License Key property Overview

Server License Keys consist of a set of properties which are placed directly into the configuration file wrapper.conf or included using a cascading configuration file. The license key is tied to a specific HostId (MAC address) which is based on a particular network adapter.

The HostId of a given server can be obtained by running the Wrapper binary with the wrapper -h parameter from within a shell or command prompt. This will result in the following output.

Example Windows Output:
Java Service Wrapper Professional Edition nn-bit n.n.n
  Copyright (C) 1999-2015 Tanuki Software, Ltd.  All Rights Reserved.
    http://wrapper.tanukisoftware.org

The Java Service Wrapper requires a License Key to activate the
software. License Keys can be purchased on the Java Service Wrapper
web site:
  http://wrapper.tanukisoftware.com/purchase

License Keys can be generated for any of the following HostIds:
  HostId #1:   00123456789a
  HostId #2:   00123456789b

Optional host name for license: myhost
Example Linux Output:
Java Service Wrapper Professional Edition nn-bit n.n.n
  Copyright (C) 1999-2015 Tanuki Software, Ltd.  All Rights Reserved.
    http://wrapper.tanukisoftware.org

The Java Service Wrapper requires a License Key to activate the
software. License Keys can be purchased on the Java Service Wrapper
web site:
  http://wrapper.tanukisoftware.com/purchase

License Keys can be generated for any of the following HostIds:
  HostId #1 (eth0):   00123456789a
  HostId #2 (eth1):   00123456789b

Any of the HostIds shown can be used to generate the License Key.

Example Server License Key:
wrapper.license.type=NODE
wrapper.license.id=200804010006
wrapper.license.licensee=Acme, Inc.
wrapper.license.host_id=00123456789a
wrapper.license.features=pro, 64bit
wrapper.license.upgrade_term.begin_date=2008-04-01
wrapper.license.upgrade_term.end_date=2009-04-01
wrapper.license.key.1=0222-2e8a-6f6d-4a4a
wrapper.license.key.2=007d-7e3c-5e2a-427e
wrapper.license.key.3=ce16-f5f0-59f4-d18a
wrapper.license.key.4=b6ca-c31a-6be8-323d
  • The .type will always be 'NODE' for Server License keys.

  • The .id is used to uniquely identify the License Key and will appear on your License Management page.

  • The .licensee value will be displayed in the console and wrapper.log file whenever the Wrapper is launched. In the case of the License Key above, the Wrapper output will appear as follows:

    Java Service Wrapper Professional Edition nn-bit n.n.n
      Copyright (C) 1999-2015 Tanuki Software, Ltd.  All Rights Reserved.
        http://wrapper.tanukisoftware.org
      Licensed to Acme, Inc.
  • The .host_id identifies the single server on which the Wrapper will be authorized to run.

  • The .features are used to describe the specific edition of the Wrapper which is authorized. In this case, the 64-bit, Professional Edition is authorized. This will also authorize the lower edition 32-bit and Standard Edition versions of the Wrapper to run.

  • The .upgrade_term.begin_date and .upgrade_term.end_date specifies the Wrapper release dates which will be authorized by the License Key. The license above will authorize versions of the Java Service Wrapper released prior to 2009-04-01. Wrapper versions released within the specified upgrade term will be authorized to be upgraded and also to run beyond the end of the upgrade term.

  • An optional lease term may also appear in some trial License Keys. These specify the dates between which the Wrapper will be authorized to run. Once the lease term has expired, the Wrapper will no longer start up.

  • The .key.1-4 are used to validate the rest of the license properties.

NOTE

The License Key property values are specific and the license will fail to authorize the Wrapper if any of its values are modified in any way.

It is also possible to include the License Keys for multiple servers in a single file by including the host names in the License Key property names. The following example shows a License Key given the host name "myhost". It is possible to change the host name portion of the License Key properties without regenerating the key.

wrapper.myhost.license.type=NODE
wrapper.myhost.license.id=200804010006
wrapper.myhost.license.licensee=Acme, Inc.
wrapper.myhost.license.host_id=00123456789a
wrapper.myhost.license.features=pro, 64bit
wrapper.myhost.license.upgrade_term.begin_date=2008-04-01
wrapper.myhost.license.upgrade_term.end_date=2009-04-01
wrapper.myhost.license.key.1=0222-2e8a-6f6d-4a4a
wrapper.myhost.license.key.2=007d-7e3c-5e2a-427e
wrapper.myhost.license.key.3=ce16-f5f0-59f4-d18a
wrapper.myhost.license.key.4=b6ca-c31a-6be8-323d

Alternatively, starting with Wrapper version 3.3.2, it is possible to use the HostIds themselves within the License Key property names. This makes it possible to define more than one license key for a single HostId. An example of where this is needed is a system which uses a load balanced network card where the HostId changes depending on the currently active underlying physical card.

wrapper.00123456789a.license.type=NODE
wrapper.00123456789a.license.id=200804010006
wrapper.00123456789a.license.licensee=Acme, Inc.
wrapper.00123456789a.license.host_id=00123456789a
wrapper.00123456789a.license.features=pro, 64bit
wrapper.00123456789a.license.upgrade_term.begin_date=2008-04-01
wrapper.00123456789a.license.upgrade_term.end_date=2009-04-01
wrapper.00123456789a.license.key.1=0222-2e8a-6f6d-4a4a
wrapper.00123456789a.license.key.2=007d-7e3c-5e2a-427e
wrapper.00123456789a.license.key.3=ce16-f5f0-59f4-d18a
wrapper.00123456789a.license.key.4=b6ca-c31a-6be8-323d

Development License Key property Overview

Development License Keys consist of a set of properties which are placed directly into the configuration file wrapper.conf or included using a cascading configuration file. The License Key is tied to a specific application using the values of the application's main class.

The application's main class is specified using the wrapper.java.mainclass property. If the main class is one of the helper classes included with the Wrapper (org.tanukisoftware.wrapper.WrapperSimpleApp or org.tanukisoftware.wrapper.WrapperStartStopApp) then the main class will be specified using the wrapper.app.parameter.1 property In either case the license will only authorize the Wrapper if the main class remains unchanged.

Example Development License Key:
wrapper.license.type=DEV
wrapper.license.id=200804010003
wrapper.license.licensee=Acme, Inc.
wrapper.license.dev_application=Acme Control Server
wrapper.license.features=pro, 64bit
wrapper.license.upgrade_term.begin_date=2008-04-01
wrapper.license.upgrade_term.end_date=2009-04-01
wrapper.license.key.1=a0a5-b478-ca71-8d59
wrapper.license.key.2=9296-6f2d-0e58-75e6
wrapper.license.key.3=0f5d-2cf2-ad36-54f9
wrapper.license.key.4=b859-dc75-61d7-b0ca
  • The .type will always be 'DEV' for Development License keys.

  • The .id is used to uniquely identify the License Key and will appear on your License Management page.

  • The .licensee and .dev_application values will be displayed in the console and wrapper.log file whenever the Wrapper is launched. In the case of the License Key above, the Wrapper output will appear as follows:

    Java Service Wrapper Professional Edition nn-bit n.n.n
      Copyright (C) 1999-2015 Tanuki Software, Ltd.  All Rights Reserved.
        http://wrapper.tanukisoftware.org
      Licensed to Acme, Inc. for Acme Control Server
  • The .features are used to describe the specific edition of the Wrapper which is authorized. In this case, the 64-bit, Professional Edition is authorized. This will also authorize the lower edition 32-bit and Standard Edition versions of the Wrapper to run.

  • The .upgrade_term.begin_date and .upgrade_term.end_date specifies the Wrapper release dates which will be authorized by the License Key. The license above will authorize versions of the Java Service Wrapper released prior to 2009-04-01. Wrapper versions released within the specified upgrade term will be authorized to be upgraded and also to run beyond the end of the upgrade term.

  • An optional lease term may also appear in some trial License Keys. These specify the dates between which the Wrapper will be authorized to run. Once the lease term has expired, the Wrapper will no longer start up.

  • The .key.1-4 are used to validate the rest of the license properties.

    Starting with Wrapper version 3.3.6, it is also possible to obfuscate the upgrade term into a 5th key value. This can be useful to avoid showing customers when a software vendor's upgrade term ends. Because the license key's upgrade term is obfuscated, it can of course make it a bit more difficult to support users who are upgrading the Wrapper on their own. When a Wrapper binary that is newer than the upgrade term allows is run, the error message will include the term end date, so this is a minor issue.

    The obfuscated upgrade term feature can be accessed when downloading a new or existing License Key.

Example Development License Key:
wrapper.license.type=DEV
wrapper.license.id=200804010003
wrapper.license.licensee=Acme, Inc.
wrapper.license.dev_application=Acme Control Server
wrapper.license.features=pro, 64bit
wrapper.license.key.0=ada5-ac8d-6f2d-54f9
wrapper.license.key.1=a0a5-b478-ca71-8d59
wrapper.license.key.2=5296-6d2d-0e58-79e6
wrapper.license.key.3=6f5d-acf2-3d36-64f9
wrapper.license.key.4=c859-dcf5-61d7-b8ca

NOTE

The License Key property values are specific and the license will fail to authorize the Wrapper if any of its values are modified in any way.

License file in Cascading Configuration File

It is often desirable to place the Wrapper License Key properties in a file other than the wrapper.conf. This can be done easily by making use of the "include file" (cascading style) functionality of Configuration files.

It is suggested that the License Key properties be placed in a file called wrapper-license.conf, located in the same directory as the wrapper.conf file. The license file is then included by placing a line like the following at the top of your wrapper.conf file:

#include ../conf/wrapper-license.conf

Note that the include file path is relative to the location of the Wrapper binary and NOT the wrapper.conf file. See the section on Cascading Configuration File ("include file") for further details and advice on how to debug problems with include files.

To make it simple to manage large numbers of license files, the Wrapper can be set up to load in license files based on the host names. This makes it possible to deploy all license files to all servers.

#include ../conf/wrapper-license-%WRAPPER_HOST_NAME%.conf

Problems?

If you encounter any licensing problems, please set the wrapper.license.debug property and enable include file debugging. In combination, most configuration problems become obvious.