NIH | National Cancer Institute | NCI Wiki  


Please be advised that NCI Wiki will be brought down for maintenance on Friday, February 23rd between 1700 ET and 1800 ET, and will be unavailable during this period.
All collaborators please ensure all work is saved before said time.

Welcome to the caNanoLab 2.1.1 Installation Guide.

Get Support

For any general information about the application, support, or to report a bug, contact

Print the Guide
If you want to print a single page, refer to Printing a Page.

Topics in this document include:

Introduction to caNanoLab

Welcome to the cancer Nanotechnology Laboratory ( caNanoLab is a data sharing portal that supports the international biomedical nanotechnology research community to expedite and validate the use of nanotechnology in biomedicine. caNanoLab provides support to annotate nanomaterials with characterizations resulting from physico-chemical, in vitro, and in vivo assays and share characterizations and associated nanotechnology protocols in a secure environment.

For more information about the 2.1.1 updates, refer to the caNanoLab 2.1.1 Release Note.

Open Source Technologies

Download each of the following tools and follow the installation instructions provided with each respective product for your environment. Assistance from a MySQL database administrator is expected to properly configure the MySQL database. For MySQL database configuration and maintenance, it is also helpful to download the MySQL workbench (suite of GUI tools) at Exit Disclaimer logo



Java Software Development Kit (JDK) version 7.0 and set JAVA_HOME 

Wildfly version 8.2.0.Final

Jakarta Ant version 1.8.x and set ANT_HOME environment variable

MySQL version 5.1.x

Obtaining the caNanoLab Source Code

Downloads for caNanoLab are available at caNanoLab GitHub Repository.

The caNanoLab Software License applies.

Ant Build Properties

Setting Properties

Follow these steps to set the build and deploy properties required for building and deploying caNanoLab.

Step 1.  Extract caNanoLab

Extract the GitHub location to a location on your local system, for example,  C:\caNanoLab_2.1.1 This location is referred as  <CANANOLAB_SOURCE>  throughout the document. Verify that the following five folders exist in the directory  <CANANOLAB_SOURCE> :

  • build
  • cananolab-db
  • cananolab-grid
  • cananolab-webapp
  • common 

Step 2. Edit Ant Properties

Edit the Ant properties file, , at  <CANANOLAB_SOURCE>/build  by specifying values for the following properties.




A directory on the system that hosts the Wildfly application server for storing uploaded files, for example,  C:/apps/caNanoLab .  

Writable Directory

This directory should be writable by the user that starts the Wildfly server, and this directory should be created prior to starting the application. Use either double-back slashes or a single forward slash / as the file separator if working on Windows platform.

The email address that receives requests for new user accounts, for example, the NCI CBIIT application support email for the NCI CBIIT installation.


A Boolean flag to indicate whether or not to use LDAP for user authentication. caNanoLab 2.1.1 and beyond does not support LDAP authentication. Set this to false.


The name of the server hosting the database, for example, localhost.


The database port number, for example, 3306.


The database user name used in the caNanoLab application, for example, cananolab_app.


The password for the database that the user specified above, for example, go!234.


The system database user name with privileges to create a database, create tables, and grant user accesses to a database, for example, root.


The password for the system database that the user specified above, for example, rootpass.


The Wildfly server directory, for example:


Installation and Deployment

Step 1.  DB changes to be deployed to migrate to CSM 5.2

a   Execute the following scripts in the order specified below.
        1. Create the following table:    
          CREATE TABLE favorite_data (
          favorite_data_id bigint(20) DEFAULT NULL,
            data_id bigint(20) DEFAULT NULL,    
            data_type varchar(200) DEFAULT NULL,    
            data_name varchar(200) DEFAULT NULL,    
            login_name varchar(200) DEFAULT NULL,    
            protocol_file_id bigint(20) DEFAULT NULL,    
            pubmed_id bigint(20) DEFAULT NULL,    
            editable tinyint(1) DEFAULT '0',    
            description text,    
            protocol_file_title varchar(200) DEFAULT NULL

        4.   Execute the following script to reset passwords for all of the accounts:
          update csm_user set password = 'zJPWCwDeSgG8j2uyHEABIQ==';

          update csm_user set first_time_login = 1;
b  Migrate encryption from 4.x CSM database.

CSM 5.0 has introduced using AES encryption to encrpt CSM User information while storing it in CSM_USER table. If you are upgrading CSM from 4.x to 5.x, apart from migrating the database, you would need to run encryption migration. This step expects PASSWORD column values in CSM_USER are not altered from the their original values created through CSM API.

        1. Download the CSM UPT v5.2 distribution file into a designated folder (for example, c:\csm_52). Be sure to note the folder name and location.
        2. Extract the contents of  the downloaded into a designated folder (for example, c:\csm_52\csm_upgrade5.2).
        3. In the designated folder, find and modify the file. Database properties must be updated with the upgraded database connection details. 
        4. Open the cmd window and navigate to c:\csm_52\csm_upgrade5.2 
        5. Run "ant migration:run".

Step 2. caNanoLab installation instructions to upgrade to 2.1.1

Follow these steps to install and deploy caNanoLab.




Set up an environment variable  JBOSS_HOME  to point to the Wildfly installation directory.

Windows Platform

Use either double back slashes // or a single forward slash / as the file separator if working on Windows platform, for example,  JBOSS_HOME=C:/wildfly-8.2.0.Final (C:\wildfly-8.2.0.Final would fail).


Execute the Ant build script build.xml located at  <CANANOLAB_SOURCE>/build  with the target  deploy:cananolab-webpp .

Example : Issue the following commands to execute the Ant script:

C:\>cd C:\caNanoLab_2.1\build
C:\caNanoLab_2.1\build>ant deploy:cananolab-webapp  

Successful execution of the Ant script generates the following artifacts that include two deployable web archive war files, configuration files and libraries for running the web application in the Wildfly environment, and also places these artifacts in the appropriate directories under  <JBOSS_HOME >. Artifacts generated are also available in the following folder under <CANANOLAB_SOURCE> :  

target/dist/cananolab- webapp/caNanoLab.war    
target/dist/common/caNanoLab_deploy.cli   target/dist/common/csmapi-5.2.jar


We recommend increasing the JBoss JVM heap size to 2G bytes and permanent generation (permgen) memory space to 256M bytes by updating the file <JBOSS_HOME>/bin/standalone.conf with the following JAVA_OPTS:

JAVA_OPTS="-Xms512m -Xmx2048m -XX:PermSize=128m 
-XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000

This configuration file is read when Wildfly server starts.

For a standalone server, pass in the JVM settings either as command line arguments when executing the $JBOSS_HOME/bin/ script, or by declaring them in $JBOSS_HOME/bin/standalone.conf.
(For Windows users, the script to execute is %JBOSS_HOME%/bin/standalone.bat while the JVM settings can be declared in %JBOSS_HOME%/bin/standalone.conf.bat.)


1.    Create a new directory structure  C:/local/content/caNanoLab/artifacts  and move the following artifacts.

  • csmapi-5.2.jar
  • caNanoLab.war
  • uptEAR.ear
  • bcprov-jdk15on-1.47.jar
  • mysql-connector-java-5.1.26.jar
  • caNanoLab_modules.cli
  • caNanoLab_setup.cli
  • caNanoLab_deploy.cli  

Create a new directory structure C:/local/content/caNanoLab/config and move the following artifacts.

  • ApplicationSecurityConfig.xml

Start JBoss application server in Standalone mode.

From <install-dir>/bin:

./ --server-config=standalone-full.xml

The cli scripts assumes the CLI port is running at 19990. If it is different, update the port number at the second line in the script. 

For Windows environment:

jboss-cli.bat --file=C:/local/content/caNanoLab/artifacts/caNanoLab_modules.cli and press <ENTER>. 

For Linux environment: --file= /local/content/caNanoLab/artifacts/caNanoLab_modules.cli and press <ENTER>.

Run the remaining caNanoLab_setup.cli and caNanoLab_deploy.cli that deploys the caNanoLab and csmUPT.

After successful completion, the following output appears in the window.

{"outcome"=> "success"}
{"outcome"=> "success"}
{"outcome"=> "success"}
{"outcome"=> "success"}
"outcome"=> "success",
"result"=> undefined


Once the deployment artifacts are deployed and the Wildfly application server is correctly configured, shutdown and restart the Wildfly application server, which in turn starts the caNanoLab application.

Open the URL, http://<APP_SERVER_URL>/caNanoLab/, for example, http://localhost:8080/caNanoLab. The Welcome/Login page appears.

  • No labels