XMS Installation

This guide will guide you through the installation of XMS and its dependencies. At this point, you should have executed the instructions of the guide of the OpenAM Installation.

First, here is a diagram to explain the relationships between each component.


XMS is the component that's used to interact with XLcloud.

It relies both on OpenAM (for identities and entitlements) and on its internal database (for stacks, layers, blueprints, cookbooks...) to provide access to every functionality of XLcloud to the clients.

information  This guide was written using CentOS. Please adapt the commands to your operating system.


The following components must be installed and configured on your system:

  • Java
  • Maven 3
  • MySQL
  • Git
  • GlassFish
  • Tomcat

We won't cover the installation process of these components.

Also, you should have cloned our XMS repository. For the purpose of this tutorial, we assume the location of the repository is /xms/ and that GlassFish is installed in /opt.

error It is very important that you have GlassFish or above, otherwise you won't be able to deploy XMS. Please make sure to update GlassFish if necessary.

Tune GlassFish

It is necessary to allow these applications to use more memory that set by default, because what we will be deploying take a lot of resources.


In the GlassFish web console, go to Configurations, server-config, JVM settings and add the following properties:


Also add this one:


If you're using OpenJDK instead of Oracle JVM, try adding this option as well:


and restart GlassFish.

Configure MySQL

Follow the Initial data section of this page: MySQL Database in order to create the xms database, as well as the xms user an set its permissions.

After you do that, you need to execute XMS DDL script file:

cd /xms/data-setup/target
mysql -u xms -p < xms_drop_and_create_db.sql

Start the components (if necessary)

Build XMS using Maven

# Start OpenDJ
# Start Tomcat
# Start GlassFish
/opt/glassfish3/glassfish/bin/asadmin start-domain

Deploy XMS into GlassFish

There are several ways to deploy apps into GlassFish, you can chose the one that suits you the best. Afterwards, XMS will be available at http://your-domain-name-or-ip:8282/ (depending on what you configured).

Before deploying, make sure that GlassFish is configured correctly by following this guide: GlassFish 3.1 Application Server.

The two .war files to deploy are:

  • /xms/impl/target/xlcloud-xms.war
  • /xms/console/web/target/xlcloud-console.war

You'll need to copy two libraries (Log4j and MySQL) into the /lib path of the domain:

Autodeploy to Glassfish

cp /opt/glassfish3/glassfish/lib log4j-1.2.14.jar mysql-connector-java-5.1.6.jar /opt/glassfish3/glassfish/domains/domain1/lib/ext/

Via GlassFish auto deploy

GlassFish works the same way as Tomcat. Put the .war file to deploy in /opt/glassfish3/glassfish/domains/domain1/autodeploy/ and wait a few minutes.

Autodeploy to Glassfish

cp /path/to/file.war /opt/glassfish3/glassfish/domains/domain1/autodeploy/

Via GlassFish web console

Go to the admin console at http://your-domain-name-or-ip:4848/, and then to Applications, Deploy, select a .war file to deploy and click OK.

Via GlassFish command line

You can deploy files using GlassFish tool asadmin:

/opt/glassfish3/glassfish/bin/asadmin deploy force /path/to/file.war

Test if everything works

Here are the things to check after you installed and deployed XMS:

accept If everything went as expected, congratulations! You just installed XMS.

information You need to access the web console on the domain or IP you defined in default-properties as xlcloud.webConsole.host (or more precisely – xlcloud.webConsole.saml2). If you access the web console using an alias, the session cookie will be generated for the xlcloud.webConsole.host despite that, and you won't be able to log in.


Here are important logs files to check out if you got an error:



Make sure to have started OpenAM before deployment on GlassFish.

Make sure you have deployed both apps (xlcloud-console and xlcloud-xms) to GlassFish.

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 5.4.6 - Documentation - Legal Notice

Site maintained by