Sign up now for Client Certification Foundation Course - June cohort!
Pure's logos
Pure Help Center for Pure Administrators

If you are a researcher, or other non-admin at your institution, click here.

  • Home
  • Announcements
  • Release Notes
  • Technical user guides
  • Training
  • Events
  • Support
  • Contact Us
  • Home
  • Training
  • Technical user guides
  • Pure installation and upgrade guide (self-hosted customers only)

How Can We Help?

Search Results

Filter By Category

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Contact us

Tomcat command-line parametersTomcat command-line parameters

These parameters can be set on the command-line when running Tomcat to change configurations for Pure.

Java and Tomcat

Parameter Command line Description
Default options
-Xms5G
-Xmx5G
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/somewhere/with/a/lot/space

These parameters should always be configured for a Tomcat running Pure.

 

We recommend using a 5 GB HEAP for most situations, please note that for more intensive use of the system a significantly larger HEAP may provide significant performance and stability improvements.

 

We strongly recommend that the HEAP dump on error options are configured, as they are essential for root cause analysis in the case of an out of memory error.

G1 garbage collector
-XX:+UseG1GC
-XX:MaxGCPauseMillis=200

The G1 garbage collector is the new standard garbage collector in Java and offers more predictable garbage collection pauses.

 

For Java 11 there is no reason to explicitly request the G1 garbage collector, and these values can safely be omitted.

Multi-node option
-XX:+UseNUMA
On systems with multiple nodes there may be a performance benefit if NUMA is enabled.
SSL trust store
-Djavax.net.ssl.trustStore=/path/to/keystore.file
-Djavax.net.ssl.trustStorePassword=password

These are used if Pure should use a different trust store than that shipped with the Java Development Kit. This is usually done because a certificate issued by a small/non-standard certificate provider is used by a system that Pure needs to communicate with.

 

See the Oracle keytool documentation for how to work with certificates and java key stores.

Proxy
-Dhttp.proxyHost=proxy.atira.dk
-Dhttp.proxyPort=8080
-Dhttps.proxyHost=proxy.atira.dk
-Dhttps.proxyPort=8081
If Pure is hosted behind a firewall that blocks outgoing requests, a proxy is required for Pure to connect to external systems. Pure uses the standard java proxy configuration parameters, see the Oracle documentation for a in-depth description.
Database configuration
-Ddb.user=<database user>
-Ddb.password=<password>
-Ddb.url=<jdbc url to the database>
-Ddb.maxActive=50
-Ddb.maxWait=60000
-DpropFile=/pack/scripts/startup.properties

The first thing that Pure needs to be able to start up is a database.

The three parameters (db.user, db.password and db.url) are required, Pure will not be able to connect to a database without them.

 

In addition to the database connection parameters other properties can be configured as well.

The most important of these is the db.maxActive parameter which determines the maximum number of connections that is created by Pure. 

It is important that this number is greater than the number of Tomcat connector threads plus 5.

These parameters can be specified either directly as parameters to the java VM or in the property file (propFile).

The property file is recommended to keep the password from being visible to other users.

Dspace
-Ddspace.performStatusCheckOnInitialization=<true|false>
Determines if the DSpace collector should check it's configuration against the configured DSpace repository on startup. Defaults to true.
File synchronisation
-DdisableFileSynchronization=true
Disables synchronization of files between storages. See File storage for a description.
File encoding
-Dfile.encoding=UTF-8

As of Pure 5.26.0, the required encoding is UTF-8 and Pure will not boot until it is met

09-Dec-2022 10:49:37.895 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [dk.atira.pure.server.lifecycle.web.LifecycleServletContextListener]
    java.lang.IllegalStateException: Invalid default charset. Default charset of Pure's Java VM must be UTF-8, but was windows-1252

The preferred way to change the default encoding used by the VM and the runtime
system is to change the locale of the underlying platform before starting your
Java program.
In Linux UTF-8 is usually the default encoding, why no change is needed.

UTF-8 in Windows (Windows Server 2019) is not a fully supported default encoding, it does exist in BETA. For Windows the file.encoding argument still works and is needed to get Pure to boot

 

Pure

These parameters will override configuration in the database. These are mostly used when coping a production system into test, so you can override the production configuration.

Setting the parameters this way will disable the possibility to configure them from inside Pure, and if you change them on the command-line it requires a restart of Tomcat.

 
Parameter Inside Pure Command line Description
Default URL
  • Administration
    • System settings
      • Mount points
-Dmount.points.defaultUrl=<url>
Configuration of the default base url
Module URL
  • Administration
    • System settings
      • Mount points
-Dmount.points.fullUrl.admin=<url>
-Dmount.points.fullUrl.portal=<url>
-Dmount.points.fullUrl.ws=<url>
Configuration of each module URL. Mostly only the default URL is needed.
Mail
  • Administration
    • System settings
      • Pure mail
-Dpure.mail.host=<smtp server>
-Dpure.mail.port=<port>
-Dpure.mail.reply-to=<email address>
-Dpure.mail.forced-recipient-of-all-email=<email address>
-Dpure.mail.from=<email address>
-Dpure.mail.support-email-address=<email address>

Configuration of mail server.

The "Forced recipient of all email" setting is especially useful in a testing environment with production data, as all emails will be sent to this address instead of the email address for each user.

File folders
  • Administration
    • System settings
      • Core configuration
-Dcore.configuration.server_data_dir=<path>
-Dcore.configuration.pure_index_folder=<path>
-Dcore.configuration.pure_file_perm_folder=<path>
The different folders where Pure stores files.
Local file store  
-Dcore.configuration.overwrite_store_mount_points=<path>

 

 

This parameter overwrites the mount points of all local file stores to the form:

<path>/<storename>

If more than one mount point exist on a store the subsequent mount points will be post-fixed with mount point index.

ie. if local has 3 mount points they will be named:

<path>/local
<path>/local_1
<path>/local_2
File serving  
-Dfile.servlet.disableASync=true
By default Pure serves full text files asynchronous, to free up database connections and server threads while transferring file data. Some server setups seem to have problems reliably serving files this way, so this switch disables this functionality, and serves the files synchronously.
Development, Test, or Production mode  
-Ddk.atira.pure.commons.shared.util.GlobalRuntimeInfo.environment=<test|dev> 

Set Pure to run in Test or Development mode.

This is visual only

See Development, Test, or Production mode for more information

 

Published at January 09, 2025

Download
Table of Contents
  1. Java and Tomcat
  2. Pure
Related Articles
  • Pure requirements
  • End of support announcements for Pure
  • Installing Pure on Linux
  • Manual Pure deployment on Linux
  • Pure database URL
Keywords
  • tomcat
  • command-line
  • java
  • tomcat command-line parameters
  • oracle

Was this article helpful?

Yes
No
Give feedback about this article

    About Pure

  • Announcements

    Additional Support

  • Events
  • Client Community
  • Training

    Need Help?

  • Contact Us
  • Submit a Support Case
  • My Cases
  • Linkedin
  • Twitter
  • Facebook
  • Youtube
Elsevier logo Relx logo

Copyright © 2025 Elsevier, except certain content provided by third parties.

  • Terms & Conditions Terms & Conditions
  • Privacy policyPrivacy policy
  • AccesibilityAccesibility
  • Cookie SettingsCookie Settings
  • Log in to Pure Help CenterLog in to Helpjuice Center

Knowledge Base Software powered by Helpjuice

Expand