Font Size:
Ask Joget AI

Joget JAVA_OPTS properties

Introduction

In Joget DX, the JAVA_OPTS environment variable is used to pass custom startup parameters to the Java Virtual Machine (JVM) when launching a Java-based application. These parameters can influence memory allocation, garbage collection behavior, debugging options, system properties, and other runtime configurations.

How does it work?

  1. Stop Joget.
  2.  Access your Joget installation directory.
  3. Open joget-start.bat
  4. On the JAVA_OPTS line, pass the properties below with the JVM -D flag. In this example, we will modify the default JAVA_OPTS line with examples from:
    set JAVA_OPTS=-Xmx768M -Dfile.encoding=UTF-8 --add-opens=java.base/java.nio=ALL-UNNAMED -Dwflow.home=./wflow/ -javaagent:./wflow/wflow-cluster.jar -javaagent:./wflow/aspectjweaver-1.9.22.jar -javaagent:./wflow/glowroot/glowroot.jar
    Bash
     
    To:
    set JAVA_OPTS=-Xmx1024M -Dfile.encoding=UTF-8 --add-opens=java.base/java.nio=ALL-UNNAMED -Dwflow.home=./wflow/ -Dwflow.ignite=false -Dwflow.secure=true -Dwflow.sharkCacheSize=512  -Dwflow.eventStreamManager=default -javaagent:./wflow/wflow-cluster.jar -javaagent:./wflow/aspectjweaver-1.9.22.jar -javaagent:./wflow/glowroot/glowroot.jar
    Bash
     
  5. Save the file and start Joget.

Joget Community Edition

  • wflow.home
    • Type: String
    • Default: <user's home directory>
    • Version: DX 8 and DX 9
    • Description: The home directory for Joget’s files.
  • wflow.collationChecking
    • Type: Boolean
    • Default: TRUE
    • Version: DX 8 and DX 9
    • Description: Whether to fix MySQL database collation.
  • wflow.secure
    • Type: Boolean
    • Default: FALSE
    • Version: DX 8 and DX 9
    • Description: Whether the server is in secure mode. Secure mode prevents exporting apps with plugins.
  • wflow.setupStaleCache
    • Type: Boolean
    • Default: FALSE
    • Version: DX 8 and DX 9
    • Description: Whether to enable stale cache for SetupManager.
  • wflow.domainStrict
    • Type: Boolean
    • Default: (not set)
    • Version: DX 8 and DX 9
    • Description: This is used to override CSRF Guard’s default behaviour.
  • wflow.csrfDomain
    • Type: String
    • Default: (not set)
    • Version: DX 8 and DX 9
    • Description: This is used to override CSRF Guard’s default behaviour.
  • wflow.requestCacheSize
    • Type: Integer
    • Default: 200
    • Version: DX 8 and DX 9
    • Description: The maximum size of a cache object to keep in the HTTP request attribute.
  • wflow.logger
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: Use a custom logging implementation. Defaults to commons-logging’s LogFactory.getLog(className).
  • wflow.cacheAllAssignments
    • Type: Boolean
    • Default: TRUE
    • Version: DX 9 only
    • Description: Cache user assignment up-front in the background to improve the Inbox performance.
  • wflow.sharkCacheSize
    • Type: Integer
    • Default: 1000
    • Version: DX 9 only
    • Description: The cache size of the Shark table counter generation.
  • wflow.asyncRequestTimeout
    • Type: Integer (milliseconds)
    • Default: 0
    • Version: DX 9 only
    • Description: The number of milliseconds to wait before executing a request asynchronously in the background. Higher values increase the delay before the request is processed asynchronously. Set the value to 0 to disable asynchronous request timeout. A recommended starting value is 30000 ms; adjust as needed based on application requirements.
  • wflow.eventStreamManager
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: The class name of an event stream manager plugin.
  • wflow.cacheManager
    • Type: String
    • Default: inMemoryCacheManager
    • Version: DX 9 only
    • Description: The name of the bean of the cache manager. inMemoryCacheManager is an alias of igniteCacheManager bean.

Joget Enterprise Edition

Joget DX

  • wflow.systemkey
    • Type: String
    • Default: Default
    • Version: DX 8 and DX 9
    • Description: Licence System Key Type (Kubernetes, CloudFoundry, AWS, Azure, GCP, Domain, Custom, Default).
  • wflow.name
    • Type: String
    • Default: (not set)
    • Version: DX 8 and DX 9
    • Description: The current node’s name in a clustered environment.

Apache Kafka

  • wflow.kafkaBroker
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: URL of Kafka broker.
  • wflow.kafkaConcurrency
    • Type: Integer
    • Default: (not set)
    • Version: DX 9 only
    • Description: Number of concurrent listeners.
  • wflow.kafkaSecurity
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: Security Type (SASL_SSL or SASL_PLAINTEXT).
  • wflow.kafkaUsername
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: SASL Username.
  • wflow.kafkaPassword
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: SASL Password.

Apache Ignite

  • wflow.ignite
    • Type: String
    • Default: FALSE
    • Version: DX 9 only
    • Description: Sets whether ignite should be enabled or disabled.
  • wflow.igniteK8sNamespace
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: Kubernetes namespace in which the Ignite service is deployed.
  • wflow.igniteK8sService
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: Kubernetes service name used for Ignite cluster discovery. Ignite will resolve pod IPs from this service.
  • wflow.igniteStaticIp
    • Type: String
    • Default: (not set)
    • Version: DX 9 only
    • Description: Comma-separated list of static IPs of existing Ignite cluster nodes that this node should connect to.
  • wflow.igniteReplicated
    • Type: Boolean
    • Default: FALSE
    • Version: DX 9 only
    • Description: Boolean flag to enable replicated cache mode. When set to true, the Ignite cache is configured as REPLICATED, meaning all nodes will hold a full copy of the data. Default value is false (partitioned mode).
  • wflow.igniteMaxAsync
    • Type: Integer
    • Default: 500
    • Version: DX 9 only
    • Description: Maximum number of concurrent asynchronous cache operations allowed per cache. If the limit is reached, further async operations will block until some complete.
  • wflow.igniteThreadPoolSize
    • Type: Integer
    • Default: max(8, available_processors)
    • Version: DX 9 only
    • Description: Overrides the size of Ignite’s main thread pools (system, striped, and public). Controls the level of concurrency available for Ignite’s internal operations, partition-aware tasks, and user jobs.
  • wflow.ignitePartitions
    • Type: Integer
    • Default: 1024
    • Version: DX 9 only
    • Description: Defines the number of partitions per cache when using the RendezvousAffinityFunction. Partitions determine how data is distributed across cluster nodes.
  • wflow.ignitePartitionBackups
    • Type: Integer
    • Default: 0
    • Version: DX 9 only
    • Description: Specifies the number of backup copies for each partition in the cache: controls data redundancy and fault tolerance.
  • wflow.ignitePairedConnections
    • Type: Boolean
    • Default: FALSE
    • Version: DX 9 only
    • Description: Boolean flag to enable paired TCP connections between Ignite nodes. If enabled, each pair of nodes uses separate connections for incoming and outgoing traffic, which may improve throughput under load.
  • wflow.igniteNodeConnections
    • Type: Integer
    • Default: (not set)
    • Version: DX 9 only
    • Description: Number of parallel TCP connections to open between each pair of nodes.
  • wflow.igniteNearCache
    • Type: Integer
    • Default: (not set)
    • Version: DX 9 only
    • Description: Sets the near cache configuration to use LRU eviction policy on all cache nodes.
  • wflow.igniteDataRegionMaxSize
    • Type: Integer (MB)
    • Default: 20% of the total RAM 
    • Version: DX 9 only
    • Description: Set the maximum size of the data region.
  • wflow.igniteAsyncTimeout
    • Type: Integer (milisecond)
    • Default: 0
    • Version: DX 9 only
    • Description: Timeout for asynchronous cache gets and puts in milliseconds.
  • wflow.cacheJdbc
    • Type: Boolean
    • Default: FALSE
    • Version: DX 9 only
    • Description: Whether Ignite should cache JDBC queries.
  • wflow.cacheJdbcExpiry
    • Type: Integer (milisecond)
    • Default: 300,000 (5 minutes)
    • Version: DX 9 only
    • Description: Ignite JDBC cache expiry.

Related Documents

Created by Debanraj Last modified by Hugo Lim on May 25, 2026