Configure the Designer

Overview

Semarchy xDI Designer does not need additional configuration in most situations. However, you can change its startup settings to meet your needs.

The startup settings are in an INI file:

  • On macOS, the INI file is named semarchy-xdi-designer.ini, and is in the /Contents/Eclipse subdirectory of the application package.

  • For Windows, the INI file is named semarchy-xdi-designer-windows.ini, and is in the main installation folder.

  • For Linux, the INI file is named semarchy-xdi-designer-linux.ini, and is in the main installation folder.

The Designer startup INI file is based on the Eclipse IDE startup file. When making edits, you should follow these best practices:

  • You should experiment with Designer launch parameters from your Command Prompt or Terminal before changing the INI file itself.

  • If a parameter would typically have a space between it and its argument, the argument must be on its own line.

  • Keep a backup of the original file in case of problems.

Memory settings

By default, Designer allows the Java Virtual Machine to manage memory automatically. This is ideal in most cases.

You can use the -Xms and -Xmx Java parameters to configure the minimum and maximum amount of memory Designer uses.

# Minimum Heap size
-Xms512m
# Maximum Heap size.
-Xmx2048m

Built-in Runtime location

The Designer built-in Runtime is deployed by default in the Designer installation folder, in a subfolder named runtime.

To change this location, edit the following property:

# Runtime location
-Dxdi.designer.runtime.home=runtime

Module generation

Module generation is configured with the following properties:

# Generated modules location
# This path is relative to the runtime location. Absolute paths are also supported.
-Dxdi.designer.module.path.v1=runtime/modules
# Automatic modules creation
-Dxdi.designer.module.automaticCreation=true

If you change the module location for Designer, only the built-in Designer runtime is aware of this new location. A standalone xDI Runtime installation needs to be configured to use the same modules directory. Refer to the Runtime installation and configuration guide to learn how to add the relevant options for that software.

License configuration

You can preconfigure license management for a xDI Designer instance by setting the following environement variables prior to starting the Designer.

  • XDI_DESIGNER_LICENSE_KEY: Set this variable to define your License Key string. When this variable is set, the Online mode is used by default. The Local Server mode is used instead if XDI_DESIGNER_LICENSE_SERVER_URL is set.

  • XDI_DESIGNER_LICENSE_SERVER_URL: Set this variable to define your local license server URL, and use the Local Server mode.

  • XDI_DESIGNER_LICENSE_KEY_FILE: Set this variable to define your License Key File location and use the Offline mode. This variable is taken into account only if XDI_DESIGNER_LICENSE_KEY is unset.

License Server certificates

Semarchy xDI Designer validates its license from a license server. This may be either the main Semarchy license server, or a local license server you install yourself. In both cases, xDI Designer communicates with the license server over an HTTP connection secured with SSL/TLS.

If you have a local license server, you need to configure it to use SSL/TLS, and specify a certificate.

If you use a certificate issued by a trusted certificate authority, Designer should connect without needing to make other changes.

Self-signed certificates

Using self-signed certificates requires you to disable a Java security setting. When possible, you should use a certificate issued by a trusted authority instead.

With a self-signed certificate, you must configure xDI Designer to recognize this certificate. Otherwise, Designer refuses the connection.

First, add the self-signed certificate to xDI Designer. You can do this in one of two ways:

  1. Give Designer access to a custom keystore that holds your certificate.

    Add your certificate to a Java Keystore, then add parameters to the Designer startup settings file to define the keystore information:

    -Dxdi.designer.license.server.keystore.path=<Path to keystore file location>
    -Dxdi.designer.license.server.keystore.type=<keystore type>
    -Dxdi.designer.license.server.keystore.password=<security password>
    -Dxdi.designer.license.server.keystore.key.alias=<keystore alias>
  2. Add the certificate to the Java Virtual Machine (JVM) truststore directly, which allows any application using the JVM to access to the certificate.

    If the JVM truststore is in a custom location, add the certificate to this location, then add parameters to the Designer startup settings file to define the certificate information:

    -Djavax.net.ssl.trustStore=<Path to truststore location>
    -Djavax.net.ssl.trustStoreType=<truststore type>
    -Djavax.net.ssl.trustStoreProvider=<provider>
    -Djavax.net.ssl.trustStorePassword=<truststore password>

Second, configure Designer to disable strict hostname verification in Java:

  1. Navigate to the configuration subdirectory of the application package or installation directory.

  2. Open the config.ini file in a text editor.

  3. Find the line containing xdi.designer.license.server.certificate.hostname.verification=true.

  4. Change true to false.

  5. Save the file.

Your self-signed certificate should be recognized by Designer.