The file application.properties stores several application-wide properties, such as which links are shown on the start page or settings regarding failed logins.

UI

 Property  Default value Explanation
login.show.link.registertrueWhether a link for creating a new account is shown on the start page.
login.show.link.passwordtrueWhether a link for forgotten passwords is shown on the start page.
login.show.link.helptrueWhether a link to these help pages is shown on the start page.
login.show.link.faqtrueWhether a link to the Q&A page  is shown on the start page.
login.show.link.privacytrueWhether a link to the privacy policy is shown on the start page.
login.show.link.imprinttrueWhether a link to the imprint is shown on the start page.
login.show.link.termstrueWhether a link to the terms and conditions is shown on the start page.
login.show.link.licensetrueWhether a link to the licensing conditions is shown on the start page.
login.show.footertrueWhether the footer is shown on the start page. The footer contains the imprint, privacy policy etc.
defaults.show.logotrueWhether the logo of the application is shown on the start page.
defaults.show.versiontrueWhether the version of the application is shown on the start page.

URLs

 Property Default value Explanation
defaults.url.help.designerhttps://help.formcycle.eu/xwiki/bin/view/Main/DesignerURL for the help pages of the Xima® Formcycle Designer.
defaults.url.videohttp://www.formcycle.de/videos/URL for the tutorial videos for Xima® Formcycle.
defaults.url.helphttps://help.formcycle.eu/xwiki/bin/view/Main/URL for the help pages of Xima® Formcycle.
defaults.url.qahttps://faq.formcycle.eu/URL for the Q&A pages for Xima® Formcycle.
defaults.url.registerhttps://form.cloudURL for creating a new account.
defaults.url.privacyhttps://form.cloud/datenschutz.htmlURL for the privacy policy.
defaults.url.imprinthttps://www.xima.de/impressum/URL for the imprint.
defaults.url.termshttps://form.cloud/agb.htmlURL for the terms and conditions.
defaults.url.licensehttps://www.formcycle.de/lizenzbedingungenURL for the licensing conditions.
defaults.url.formcyclehttps://www.formcycle.deURL to Xima® Formcycle
defaults.url.formcloudhttps://www.form.cloudURL to the Xima® Formcloud.
defaults.url.loopback.base since 5.0.17Alternative loopback URL for internal calls (e.g. print) .

Default language

Change the default language of the application by modifying these properties. The application itself is fully internationalizable.

 Property Default value Explanation
defaults.systemeinstellung.language-Language code for the default language of the application.ISO-639 alpha-2 oder alpha-3.
defaults.systemeinstellung.county-Region code for the default language of the application. ISO 3166 alpha-2 country code or UN M.49 numeric-3 area code.
defaults.systemeinstellung.variant-Language variation for the default language of the application.

Login

To prevent attacks on user passwords, you can limit how often each user may fail to enter the correct password before they are locked out for a certain amount of time.

By default, a user must wait for 15 minutes after 5 consecutive failed login attempts.

 Property Default value Explanation
login.fails.lock.timeout900 (=15 minutes)The amount of time in seconds a user needs to wait after using up all their login attempts. If the value is less than 60, it is clamped to 60.
login.fails.lock.count5The number of consecutive failed login attempts before a user is locked out. Set to 0 for an unlimited amount of attempts.
login.fails.lock.onfullcachetrueWhether the system is locked when the login cache is full. Users cannot login anymore if the system is locked.
login.fails.cache.heap.count10000The number of login attempts kept in memory. If less than or equal to 0, it is clamped to 1000.
login.fails.lock.maxentries11000The maximum number of login attempts stored in the cache. If the cache is full, no more logins are allowed. Set to 0 to disable the limit.
login.fails.cache.disk.size102400The number of login attempts cached in the file system. Set to 0 to disable this limit, and make sure you have got sufficient disk space. Set to a value less than 0 to disable the file cache (and use only the in-memory cache).
last.login.savefalseWhether the most recent date when a user signed in is saved and shown for each client.

An example for a configuration requiring a user to wait to 100 minutes after 10 failed login attempts.

login.fails.lock.timeout=6000
login.fails.lock.count=10

The number of login attempts before a user is locked out is separate for each master server and frontend server. Please note that this may change in upcoming releases.

Cache

The file cache stores files used by the system, the form cache stores rendered HTML forms.

 Property Default value Explanation
cache.files.disk.size-1Maximum size in MB of what the file cache stores in the file system. No limit when set to -1. If set to 0, the file system is not used by the cache.
cache.files.heap.size75Maximum size in MB of what the file cache stores in-memory. If set to 0, the in-memory file cache is disabled.
cache.files.idletime0Time interval in seconds until an item in the form cache is removed when it is never accessed during that time interval. Set to 0 to disable.
cache.forms.disk.size-1Maximum size in MB of what the form cache stores in the file system. No limit when set to -1. If set to 0, the file system is not used by the cache.
cache.forms.heap.size75Maximum size in MB of what the form cache stores in-memory. If set to 0, the in-memory form cache is disabled.
cache.forms.idletime0Time interval in seconds until an item in the form cache is removed when it is never accessed during that time interval. Set to 0 to disable.

System

 Property Default value Explanation
bot.field.namex-i-m-a-5536-requiredName of the hidden input field for detecting bots.
defaults.systemeinstellung.loginNamesadminLogin name for the super administrator of the system.
defaults.systemeinstellung.passworthash(admin)Login name for the super administrator of the system. Should be changed after installing the application. The password is stored hashed, it should not be set manually in the configuration file, but only via the user interface.
cluster.implementationjgroupsThe implementation used for clustering. Allowed options are jgroups and shoal.
system.server.id 6.6.5+ (generated)Unique ID of the server which can be included in the HTTP header and attached to the submit URL of a form for the use of load balancers. See HTTP.

Limits

 Property Default value Explanation
defaults.upload.max_size-1Maximum size in bytes for file uploads within forms. Applies to each file individually. Set to -1 to disable.
defaults.query.database.max_rowcount5000Maximum number of returned rows for a query to the database. Set to 0 to disable.
defaults.upload.max_fieldsize0Maximum size in bytes when retrieving columns of type character (eg. char or varchar) or binary. Set to 0 to disable.

Frontend Server

These settings control the connection to the frontend server. They should be edited via the user interface.

 Property Default value Explanation
fs.settings.interface0.0.0.0The network interface the frontend server uses for listening to connections from the master server. 
fs.settings.port4753The port for the connection to the master server.
fs.settings.ssl.usefalseWhether the connection between the master serverand frontend server is encrypted via SSL.
fs.settings.authKey(empty string)The token of this frontend server. Used to check if the master server is authorized to establish a connection to this frontend server.
fs.settings.ssl.keystore.path(empty string)The path to the keystore file (on the file system) for the connection. Required if SSL is used.
fs.settings.ssl.keystore.pass(empty string)The password needed to access the keystore. Required if SSL is used.

LDAP

 Property Default value Explanation
ldap.override.filter.user(|(objectclass=user)(objectclass=person)(objectclass=inetOrgPerson)(objectclass=organizationalPerson))LDAP filter for searching for available LDAP users. By default, finds all objects with the object class user, person, inetOrgPerson, or organinsationalPerson.
ldap.override.filter.user.login(|(sAMAccountName={0})(userPrincipalName={0})(uid={0}))LDAP-Filter for locating a user with a given login name. Specify the login name with the placeholder {0}. By default, finds all users if the attribute sAMAccountName, userPrincipalName or uid matches the login name.
ldap.override.filter.kerberos.user 6.6.5+ Value of the user query see above.LDAP filter for searching a user after Kerberos authentication. The available login corresponds to the pattern <username>(/<instance>)@<REALM> where the /<instance> part is optional. Using the example test/admin@EXAMPLE.COM, the individual components are available in the corresponding filter as follows: {0}=test/admin@EXAMPLE.COM, {1}=test/admin, {2}=test,{3}=admin,{4}=EXAMPLE.COM. For example, to perform a user search within a single-domain environment with a non-standard userPrincipalName, the query could be defined as follows: (sAMAccountName={2})
ldap.override.filter.group(|(objectclass=group)(objectclass=groupofnames)(objectclass=groupofuniquenames))LDAP filter for searching for LDAP groups. By default, searches for all objects with the object class group, groupofnames, or groupofuniquenames.

HTTP

 Property Default value Explanation
http.header.server.id (migrated to system.server.id as of 6.6.5+ )(empty)Value of the HTTP header XFC-Server-Id. It is set on each response and identifies the Xima® Formcycle server. If this property is not set at all, a randomly generated UUID is used. If this property is empty, the header is not set.
http.header.referersame-originThe referre policy for HTTP responses. You can also change this setting in the system settings menu .
http.header.hsts.max(empty)The value for the max-age of the HTTP Strict Transport Security. You can also change this setting in the system settings menu .
http.header.hsts.subfalseWhether the HTTP Strict Transport Security should be applied to sub domains as well. You can also change this setting in the system settings menu .
http.header.serverid.name 6.6.5+ (not available)Specifies the header name with which the system.server.id is written to all requests. If this entry exists but is empty the corresponding header will not be set. If the entry does not exist the default XFC-Server-Id is used. 
http.param.serverid.name 6.6.5+ (not available)Specifies the name of the URL parameter used to append the system.server.id to the form submission URL. If the value is empty or not available, no parameter will be appended.

Debug

 Property Default value Explanation
debug.show_sqlfalseSets the Hibernate properties hibernate.show_sql and hibernate.format_sql to true. Write all executed SQL statements to the console.

Quartz jobs

 Property Default value Explanation
cleanup.worker.activetrueWhether the system cleanup job is active and run periodically. The system clean up jobs, for example, checks for unconfirmed form records waitning for a double opt-in confirmation, and deletes them when they are expired.
cleanup.worker.cronexpression0 0,15,30,45 * ? * *The cron expression for the system clean up job that indicates when and how often that job is run. The system clean up jobs, for example, checks for unconfirmed form records waitning for a double opt-in confirmation, and deletes them when they are expired.
Copyright 2000-2024