Submit a ticketCall us

Looking to compare latest NPM features with previous versions of NPM?
The NPM new feature summary offers a comparison of new features and improvements offered with this release.

 

 

 

 

Home > Success Center > Web Help Desk (WHD) > Web Help Desk 12.5 Administrator Guide > Appendix > JVM arguments

JVM arguments

Table of contents
No headers
Created by Steve.Hawkins, last modified by Anthony.Rinaldi on Jul 18, 2016

Views: 1 Votes: 0 Revisions: 4

JVM arguments are flags that are passed to the Java Virtual Machine at the time the application is launched. On Linux machines, they can be provided through the JAVA_OPTS setting in the whd.conf file. Configure Windows machines located at:

whd_home>/bin/wrapper/conf/wrapper_template.conf

For example, on a Linux installation, you could disable concurrent request handling and set the Casper requestor thread count to 6 by setting JAVA_OPTS in the whd.conf file as follows:

JAVA_OPTS=-DWHDconcurrentRequests=false -DCasper9RequestorThreadCount=6"

The syntax for Windows machines (in wrapper_template.con) is slightly different:

wrapper.java.additional.12=-DWHDconcurrentRequests=false

wrapper.java.additional.13=-DCasper9RequestorThreadCount=6

The number to use for each line depends on your particular configuration. Additionally, if you are adding arguments, you must use -D<argument>.

Argument Value Default Description

activemq.broker.port

<port>

61616

Defines port used by ActiveMQ. Needs to be unique per instance if you plan to run multiple Web Help Desk instances on a single machine.

Casper9RequestorThreadCount

integer

4

Provides number of threads sending REST requests to the JSS server during asset synchronization using Casper 9 plug-in.

WHDlog4jConfigOverride

true | false

false

If true, defines Web Help Desk does not use the database settings configured at Setup > General > Logs to override the standard configuration of log4j.

whd.smtp.host

<host>

 

Defines the default SMTP server host to use when running in hosted mode.

whd.smtp.port

<port>

 

Defines the default SMTP server port to use when running in hosted mode.

whd.stdDeploy

true | false

false

Indicates that Web Help Desk is running in a standard deployment. Standard deployment is the default configuration the Web Help Desk installer provides, with an embedded Tomcat deployment at <whd_home>/bin/tomcat/, the Web Help Desk application at <whd_home>/bin/webapps/, and the configuration files at <whd_home>/conf/. The Web Help Desk start script automatically supplies this parameter.

org.apache.tomcat.util.
http.ServerCookie.ALLOW_
HTTP_SEPARATORS_IN_V0

true | false

false

Is an essential argument for the Spring servlet. It allows special characters from whduser_helpdesk cookie to be parsed. The argument is set to true for all standard deployments where the parameter is provided automatically by the Web Help Desk start script or wrapper_template.conf. The same argument should also be applied also for non-standard deployments.

WHDconnections

<count>

10

Provides the number of allowed simultaneous connections to the database. The actual number used can be twice this value, and even a few more when certain background processes are running.

WHDconcurrentRequests

true | false

true

Indicates whether Web Help Desk should process requests sequentially or simultaneously (in separate threads). There is a known risk of deadlock when concurrent requests are enabled and multiple browser windows are open for a given session. However, disabling concurrent requests can result in degraded performance when a request is slow to respond ??? such as a request to generate a computation-intensive report.

WHDhosted

true | false

false

(Hosted) Determines whether Web Help Desk should run in hosted mode. When running in hosted mode, the Web Help Desk hosted password must also be provided. Hosted mode requires an account ID to be included in the login URL, and disables certain features (e.g., database and log settings).

Only customers who are authorized hosting providers have access to Web Help Desk hosted features.

WHDhostedStandalone

true | false

false

(Hosted) Determines whether Web Help Desk should run in hosted standalone mode. When running in hosted standalone mode, certain features are disabled (e.g., database and log settings). Unlike regular hosted mode, only one account is serviced, and the login URL does not need to include an account ID. Web Help Desk uses this mode is used when the installation with its own database is hosted.

WHDhostedAlertsFeed

<url>

 

(Hosted) Optional URL to an RSS feed used to generate Messages in hosted accounts.

WHDhostedSubscriberRange

x..y | x..

 

(Hosted) Provides range of subscriber accounts to be serviced by this hosted instance. If y is omitted, it defaults to 1000000. Used only when running in hosted mode as a daemon, to enable distribution of the hosted daemon load across multiple daemon instances.

WHDhostName

<host>

webhelpdesk.com

(Hosted) Identifies host to use in URLs back to Web Help Desk.

WHDsecureHostName

<host>

secure.webhelpdesk.com

(Hosted) Identifies host to use in HTTPS URLs back to Web Help Desk.

WHDdemo

true | false

false

Determines whether Web Help Desk should run in demo mode. Running in demo mode, disables certain features such as database and log settings and the ability to save Setup menu changes. Also replaces occurrences of DemoSandbox.woa in URLs with the name of the application as defined in WebObjects Monitor (plus .woa).

WHDliveDemo

true | false

false

Determines whether Web Help Desk should run in live demo mode. Allows some functionality that regular demo mode does not, such as changing the look and feel.

WHDsupport

true | false

false

Defines whether Web Help Desk should run as the Web Help Desk support application. When running as the Web Help Desk support application, clients must provide a license key with an unexpired support license in order to submit a ticket, and the parameters of their support license are displayed in the Tech view of their tickets.

TEST

true | false

false

Determines whether Web Help Desk should run in TEST mode. Test mode enables certain features that are helpful during development, e.g., the ability to run individual daemons manually, by clicking links at the footer of each web page; the ability to preview e-mails in the browser when editing a ticket; and the ability to edit help popups by clicking on labels. Test mode also provides some protections like disabling e-mail from being sent to clients that are created when bulk-synchronizing with an LDAP connection.

WHDsql

true | false

false

Enables logging of each SQL statement.

WHDtimeouts

true | false

false

Designates whether LDAP and asset discovery connections timeout when an error occurs while attempting to establish a connection. Timeout duration is six daemon intervals.

WHDFingerPort

<port> | -1=disabled

79

Prescribes the port on which Web Help Desk listens for finger protocol requests, which indicate that it should begin an EmailDaemon cycle to get new e-mail.

WHDIgnoreClientPassword

true | false

false

Allows users to log in without providing a valid password. We probably don't want to document this feature for public consumption.

WHDPrivilegedNetworks

<list>

localhost

Provides Classless Inter-Domain Routing (CIDR)-formatted, comma-separated list of addresses or networks that determines which browsers have permission to do one of the following:

  • Configure the database connection settings.
  • Begin the database schema update process.
  • Replace an invalid license key after a version update.

WHDPort

<port>

80 if hosted

Prescribes the port to use in URLs that refer back to Web Help Desk. If -1 is given, the port is taken from PREFERENCE.HOST_PORT. If hosted, 80 is used regardless of this setting.

WHDSecurePort

<port>

443

Defines the port to use for HTTPS URLs that refer back to Web Help Desk. If a standard Tomcat deployment (see whd.stdDeploy), -1 will be read as 443. If not a standard Tomcat deployment, the port is taken from PREFERENCE.HOST_PORT_SSL. If hosted, 443 is used regardless of this setting.

WHDLabelsFolder

<path>

<whd_home>
/conf/labels /Helpdesk.woa/..

(Hosted/Dev) Path to labels folder. Regardless of this setting, if a standard Tomcat deployment (see whd.stdDeploy), <whd_home>/conf/labels will be searched first, and then Helpdesk.woa/Contents/Resources/labels. Otherwise, the default path will be the folder above Helpdesk.woa.

WHDReportPlugInDir

<path>

/Helpdesk.woa/..
/ReportPlugIns

Determines path to the report plugins directory or directories. The default path is in the ReportPlugIns directory above Helpdesk.woa. Multiple directories may be specified by separating them with the path separator character (':'). If the path string begins with a plus sign ('+'), the provided paths will be included in addition to the default path.

During development, the path may point to a classes folder containing the unarchived contents of a plugin. Also during development, changes to plugins are automatically reloaded. (If development mode isn't detected automatically, it can be forced with the JVM argument er.extensions.ERXApplication.developmentMode=true.)

WHDDiscoveryPlugInDir

<path>

/Helpdesk.woa/..
/DiscoveryPlugIns

Defines path to the discovery plugins directory. The default path is the DiscoveryPlugIns directory above Helpdesk.woa. (See additional notes for WHDReportPlugInDir.)

WHDDashboardPlugInDir

<path>

/Helpdesk.woa/..
/DashboardPlugIns

Provides path to the dashboard widget plugins directory. The default path is the DashboardPlugIns directory above Helpdesk.woa. (See additional notes for WHDReportPlugInDir.)

WHDEnableSQLTool

true | false

false

Prescribes whether the endpoint for querying the database is active. If true, an SQL query tool can be accessed at http://localhost:8081/helpdesk/WebOb...ctions/sqlTool

WHDInitSchemaOnly

true | false

false

If true, then when initializing the database, the application stops after creating the schema, before populating the database. This makes it possible to create the empty database schema, which can be possible when migrating data from another database type.

WHDDisableImapPartialFetch

true | false

false

Sets the mail.imap.partialfetch property for IMAP connections to false, which can be necessary for some mail servers that fail to return attachment data properly.

WHDLdapPasswordCacheHours

<hours>

168 (1 week)

Provides default number of hours for LDAP Connection password caching. Can be overridden in the settings for individual LDAP Connections.

WHDSkipForeignKeyCheck

true | false

false

Defines whether the schema update process should check and repair foreign-key constraints.

WHDSkipPrimaryKeyCheck

true | false

false

Prescribes whether the schema update process should check and repair primary-key constraints.

WHDDisableSessionHeartbeat

true | false

false

Determines whether the application should attempt to detect whether a ticket edit session has been abandoned by leaving the page. When enabled, the ticket editor sends "pulse" requests to Helpdesk.woa/wa/processHeartbeat according to the interval specified by WHDSecondsBetweenHeartbeat. Each heartbeat request includes the ticket ID, the ticket editing session ID (a PK into the ACTIVE_SESSION table, not to be confused with the application session ID itself), and a count that is incremented for each heartbeat, starting over at 0 whenever the editing page is refreshed. When the heartbeat request is processed, an ACTIVE_SESSION record indexed by the ticket ID and the editing session ID is updated with the current time.

When the amount of time specified by WHDHeartbeatTimeoutSeconds has passed without receiving a heartbeat, the ticket editing session is considered to have been abandoned, and editing locks for the ticket are cleared.

When the heartbeat count reaches WHDHeartbeatWarningCount, a warning message is logged. If the heartbeat count reaches WHDMaxHeartbeatCount, the ticket editor stops sending heartbeats, and the application stops updating the ACTIVE_SESSION table when the tickets are processed.

WHDSecondsBetweenHeartbeat

<seconds>

55

Defines the interval at which the ticket editor sends heartbeat requests to Helpdesk.woa/wa/processHeartbeat. (See WHDDisableSessionHeartbeat.)

WHDHeartbeatTimeoutSeconds

<seconds>

120

Identifies the amount of time without receiving a heartbeat until a ticket editing session is considered to have been abandoned.

WHDHeartbeatWarningCount

<integer>

30

Prescribes the number of ticket editor heartbeats until a warning message is logged. (Used for troubleshooting.)

WHDMaxHeartbeatCount

<integer>

10000

Defines the maximum number of heartbeats that should be sent from a given ticket editing session.

WHDDatabaseUpdatePassword

<password>

<none>

If a password is provided, the database update process may be initiated by sending a GET request to Helpdesk.woa/wa/DBActions/performDatabaseUpdate?password=<password>. When a database update has been initiated through this method, subsequent requests to this URL return progress statistics.

WHDMaxDashboardWidgets

<integer>

-1

Maximum number of widgets that a given tech may configure on her dashboard. -1 = unlimited, 0 = disabled.

WHDReportingAppName

 

<application name>

(Hosted) If provided, the given application name is used instead of the current application name when generating bookmark-able links to specific reports. This was provided so that Macquarie University could have an instance with a large amount of memory dedicated for running reports, and have the bookmark-able URLs from the non-reporting instances point to the reporting instance.

WHDBcryptRounds

<integer>

10

Provides how many rounds of encryption to use when creating Bcrypt digests. (Eventually, password digests may be generated using the more secure Bcrypt algorithm instead of MD5, but for now, Bcrypt is used only to generate the version number hash in AppProperties_Generated.java. We can switch to Bcrypt for passwords as soon as we upgrade the Mobile app to no longer send passwords as MD5 digests. All that is required to make the switch in the application is to change the order in which digest providers are configured in MDSDigestString.java.)

WHDEstimatedActiveCustomFields

<integer>

2000

Identifies estimated number of custom fields of any entity type that are likely to be active. ("Active" custom fields are those that are not empty are not marked as deleted.) Used as a heuristic for optimizing the removal of inactive custom fields from the database, which is performed each time the application starts up in order to optimize the performance of custom field handling.

WHDUpdateSqlLog

<path>

 

If provided, SQL generated for updating the database schema is written to the specified file instead of being committed to the database. Useful for generating an update script that can be applied to the database manually.

WHDAllowAbsoluteManageSQLiteDatabase

true | false

false

If true, the Discovery Connection panel for Absolute Manage allows the user to select the Absolute Manage SQLite database instead of the MySQL database. Disabled by default because Absolute Manage says the SQLite database is subject to change and isn't a supported means of accessing discovered data.

WHDWebObjectsMonitorDeployment

true | false

false

If true, the application acts as if deployed from WebObjects Monitor regardless of whether this is the detected deployment environment. (When running in WebObjects Monitor, the application does not redirect to the whd-web application, which runs only as a servlet, and therefore certain functionality is disabled.)

WHDDisableSnapshotRefCounting

true | false

false

If true, EOF snapshot-reference counting is disabled. This can prevent errors about EOF snapshots, but it means that all records fetched from the database are retained in memory. This is provided for troubleshooting. It is unlikely to be a viable option for production deployments because it is likely to require too much memory.

WHDEnableOutgoingMailHistory

true | false

true

Determines whether history should be maintained for email that is sent. Outgoing e-mail history can be viewed at Setup > E-Mail > Outgoing Mail Accounts > E-Mail History. History entries include binary copies of the actual e-mail message, which can result in large amounts of database usage over time. The E-Mail History tab provides an option to clear the history.

WHDEnableScripts

true | false

false

If true, the application looks in the scripts folder for the existence of JavaScript files with predefined names that corresponding to certain callback actions.

WHDDisableScriptCache

true | false

false

Whether scripts should be cached or reloaded whenever referenced. Should be true only when testing/troubleshooting.

WHDScriptLogLevel

"TRACE" | "DEBUG" | "INFO" |
"WARN" | "ERROR"

"ERROR"

Defines the level of detail at which script execution should be logged.

WHDScriptFolder

<path>

<whd_home>
/conf/scripts

Folder in which to look for scripts.

WHDScriptLogFolder

<path>

<whd_home>/log
/ Helpdesk.woa/..

Folder in which script log will be written. Script log is named "scripts.log," rolled over up to 5 times in 15MB files.

WHDDisableExternalAuth

true | false

false

If true, SSO is disabled regardless of selection at Setup > General > Authentication > Authentication Method.

WHDUseAppNameForLoginUrl

true | false

true

(Hosted) If true, the URL used when generating URLs that refer back to WHD will use the application name (e.g., "HostedHelpdesk") rather than simply using the value stored in PREFERENCE.SAVED_LOGIN_URL. Setting this to false allows instances that are specially configured for things like reporting (e.g., "OneHelpReporting") to use the application name specified for general instances (e.g., "OneHelp") when constructing links back to WHD in reports, etc.

WHDWebUrl

<url>

/whd-web

Base URL to the whd-web application. Specifying a full URL could be useful during development in order to redirect to a different port than the one on which the WebObjects application is being served while debugging.

WHDPrivateBaseUrl

<url>

 

Provides the URL to use for backend communication between helpdesk and whd-web applications. This is constructed automatically by the WHD start scripts. Typically configured as "http://localhost:<port>" or "https://localhost:<secure_port>," where <port> and <secure_port> are the WHD HTTP ports configured in whd.conf.

WHDDisableGSW

true | false

false

If true, then when database connection issues are detected, the old database connection configuration panel will be presented instead of redirecting to the new Getting Started Wizard. (Can be useful during development.)

WHDhostedDbHost

 

 

Deprecated. No longer used. Use whd.db.host instead.

WHDhostedDbName

 

 

Deprecated. No longer used. Use whd.db.name instead.

WHDhostedDbUserName

 

 

Deprecated. No longer used. Use whd.db.username instead.

WHDhostedDbPassword

 

 

Deprecated. No longer used. Use whd.db.password instead.

(All properties in <whd_home> / conf /.whd.properties>)

 

 

Any of the database-connection properties recorded in <whd_home>/conf/.whd.properties can be specified as JVM arguments. This can be useful to ensure that the application uses the correct parameters in the event that there is a failure reading the .whd.properties file.

WHDEnterpriseObjectCreationTracing

true | false

false

If enabled, MDSGenericRecord records stack traces of where objects are created, which can be used when an IllegalStateException occurs in MDSGenericRecord.willRead() -- which happens when an attempt is made to access an EO after its editing context has been disposed.

WHDEditingContextDebugging

true | false

false

If enabled, MDSEditingContext.newEditingContext() returns instances of MDSEditingContext instead of ERXEC, which record the name of the editing context as well as the editing context itself, so that the object's EC can be more easily identified in logging output. MDSEditingContext also records a stack trace when the editing context is disposed so that it can be logged in MDSGenericRecord.willRead() when an attempt is made to read properties of an object belonging to an editing context that has been disposed.

WHDHideTickets

true | false

false

If true, the Tickets menu option is hidden from client and tech views. (For customers who want to use the application for Assets and FAQs only.)

WHDRequireHttpApiKey

true | false

false

If true, the Helpdesk.woa/wa/createTicket direct action requires an apiKey to be provided in the request.

WHDShowLinkLabels

true | false

false

If true, the Setup menu displays label keys instead of labels, to aid in determining labels to use for generating deep links to specific setup menu options.

WHDUseOriginalCookieParser

true | false

false

If true, then the original WebObjects class for parsing cookies will be used instead of the custom class provided by WHD that corrects for cookies that fail to follow the standard cookie syntax by including unencoded commas.

WHDEmailCheckInterval

<seconds>

60
(min 15)

Deprecated. Use "WHDDaemonInterval.EmailDaemon" instead.

WHDCleanupInterval

<seconds>

3600
(min 3600)

Deprecated. Use "WHDDaemonInterval.CleanupDaemon" instead.

WHDMessageCloserInterval

<seconds>

300
(min 300)

Deprecated. Use "WHDDaemonInterval.MessageCloserDaemon" instead.

WHDDaemonMode

background | dedicated | none

none

Specifies the way in which daemon processes will be run in this instance. A given daemon should never be started in more than one instance. See WHDDaemons for running only certain daemon processes on a given instance.

background: Daemons will run as background processes.
dedicated: Application will ONLY run background processes; users will not be able to log in to this instance.
none: Daemons will not be run in this instance.

WHDDaemons

[-]<list>

All daemons
enabled

Provides comma-separated list of daemons to start, if WHDDaemonMode is background or dedicated. If list is preceded by a minus sign, all daemons EXCEPT those in the list will be started.

WHDDaemonInterval

<seconds>

300 / 600
(min 60)

Defines the default daemon interval in seconds. Default is 300 seconds (5 mins) for standard deployments, 600 seconds (10 mins) for hosted deployments. Most daemons have a minimum interval of 60 seconds. (DelayedActionDaemon has a 20s default and 15s minimum; MessageCloserDaemon has a default and minimum interval of 5 mins; CleanupDaemon has a default and minimum interval of 1 hr; and EmailDaemon has a default interval of 60s and a minimum of 15s.)

WHDDaemonInterval.EmailDaemon

<seconds>

60
(min 15)

Designates the interval (in seconds) between checks for incoming ticket e-mail. Default is 60 seconds. Minimum is 15 seconds.

WHDDaemonInterval.LdapSyncDaemon

<seconds>

300 / 600
(min 60)

Defines the interval (in seconds) between checks for whether an LDAP sync is needed. Default is 300 seconds (5 mins) for standard deployments, 600 seconds (10 mins) for hosted deployments. Minimum is 60 seconds.

WHDDaemonInterval.AlertDaemon

<seconds>

300 / 600
(min 60)

Prescribes the interval (in seconds) between checks for whether ticket alerts need to be sent. (Alerts are configured in Setup > Tickets > Priority Types.)

WHDDaemonInterval.TicketCloser
Daemon

<seconds>

300 / 600
(min 60)

Identifies the interval (in seconds) between checks for tickets that need to be auto-closed. (Auto closure is configured for status types in Setup > Tickets > Status Types.)

WHDDaemonInterval.ClientReminder
Daemon

<seconds>

300 / 600
(min 60)

Designates the interval (in seconds) between checks for tickets that are due for a reminder to be e-mailed to the client that the ticket is waiting for their reply. Reminders are configured in Setup > Tickets > Priority Types.

WHDDaemonInterval.ServiceExpiration
Daemon

<seconds>

300 / 600
(min 60)

Defines the interval (in seconds) between checks for service time blocks that have expired. Service blocks are configured in Setup > Parts & Billing.

WHDDaemonInterval.ReportSchedule
Daemon

<seconds>

300 / 600
(min 60)

Identifies the interval (in seconds) between checks for reports that are due to be e-mailed. Report schedules are configured at Reports > Report Schedules.

WHDDaemonInterval.AssetReservation
Daemon

<seconds>

300 / 600
(min 60)

Prescribes the interval (in seconds) between checks for asset reservations that should be checked out automatically, and for checked-out assets that are overdue. Reservations are configured at Assets > Reservations.

WHDDaemonInterval.DelayedAction
Daemon

<seconds>

20
(min 15)

Designates the interval (in seconds) between checks for e-mail that has been queued for sending in the background.

WHDDaemonInterval.ServletPulse
Daemon

<seconds>

900
(min 60)

Determines the interval (in seconds) between triggering of new dummy session. Used only in Tomcat deployments. (Attempt to work around strange hangups that appear to happen only when running under Tomcat, and seem to be prevented by invoking a request that generates a new session.)

WHDDaemonInterval.ApplePushNotifications
Daemon

<seconds>

14400
(min 60)

Provides the interval (in seconds) between checks for Apple devices that should no longer receive push notifications.

WHDDaemonInterval.AssetDiscovery
Daemon

<seconds>

300 / 600
(min 60)

Identifies the interval (in seconds) between checks for whether an Asset Discovery Connection is due to be run.

WHDDaemonInterval.BackupDaemon

<seconds>

300 / 600
(min 60)

Designates the interval (in seconds) between checks for whether a database backup is due.

WHDDaemonInterval.GarbageCollection
Daemon

<seconds>

300 / 600
(min 60)

Specifies the interval (in seconds) between Java garbage collection triggers.

WHDDaemonInterval.CleanupDaemon

<seconds>

3600
(min 3600)

Designates the interval (in seconds) between runs of the cleanup daemon. The cleanup daemon performs various cleanup tasks such as deleting tickets with no request type; setting the DELETED field to 0 for any tickets for which the value is null; deleting single-use bulk actions that have completed; adding 2000 years to any ticket open or close dates prior to the year 100; and removing expired e-mail history entries.

WHDDaemonInterval.MessageCloserDaemon

<seconds>

300
(min 300)

Interval in seconds between checks for whether any Messages are due for closing.

WHDDaemonInterval.AssetAlertDaemon

<seconds>

3600
(min 60)

Defines the interval (in seconds) between checks for assets that have alerts due for contract expiration, warranty expiration, and lease expiration.

WHDDaemonInterval.ApprovalReminderDaemon

<seconds>

300
(min 60)

Identifies the interval (in seconds) between checks for approval requests that need reminder e-mails.

WHDDaemonInterval.SurveyReminderDaemon

<seconds>

300 (min 60)

Provides the interval (in seconds) between checks for unanswered surveys that need reminder e-mails.

WHDDaemonInterval.InventoryDaemon

<seconds>

300
(min 60)

Designates the interval (in seconds) between checks for inventories that are below the threshold for requiring alert e-mails.

WHDDaemonInterval.SupportExpirationDaemon

<seconds>

86400
(min 60)

Specifies the interval (in seconds) between support expiration checks. All admin-level techs receive expiration warning emails.

WHDPageCacheSize

<# pages cached>

10

(min 2)

Sets the number of pages cached by the WO for backtracking, can be used for tweaking memory consumption.

Use carefully; numbers 0 and 1 can cause issues.

WHDLogMaxSize

Size in MB

15

Presents size of helpdesk.*log files.

WHDLogFileCount

<# of files>

5

Provides count of helpdesk.*log files generated by log4j.

 

 
Last modified
15:25, 18 Jul 2016

Tags

Classifications

Public