Please be aware that there is newer version of documentation available for Webswing. Documentation 25.2
Application configurations for server
This is application configurations for server in webswing.config.
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement |
|---|---|---|---|---|---|
| Enabled | enabled | If true, application will be started automatically, when server starts. | true | boolean |
|
| Context Path | path | Url context path where the application will be deployed. | String |
||
| Name | name | Application name. | My Application | String |
✅ |
| Icon | icon | Path to icon displayed in application selection dialog. Recommended size 256x256. | String |
✅ | |
| Web Home Folder | webHomeDir | Application's home directory for web-related content. This will be the base directory of any relative classpath entries specified. | ${user.dir} | String |
✅ |
| Web Folder | webFolder | Folder to be used to store customized static web files like HTML, CSS or Javascript. | String |
✅ | |
| Restricted Resources | restrictedResources | Defined path-prefix restricts access to resources only to authenticated users (e.g. '/docs'). Applies to static resources inside 'Web Folder' or packaged with Webswing. (e.g. '/myapp/docs/index.html') | List<String> |
✅ | |
| File viewers | fileViewers | Configures URL handlers for files based on their extension and associated AWT Desktop file operations. | List<FileViewerConfig> |
✅ | |
| Localization Folder | langFolder | Folder to be used to store customized messages and translations in supported languages. English is available by default. | String |
✅ | |
| CORS Origins | allowedCorsOrigins | If you are embedding Webswing to page on different domain, you have to enable Cross-origin resource sharing (CORS) by adding the domain in this list. Use * to allow all domains. | List<String> |
||
| Security | security | WebswingSecurityConfig |
|||
| Session Mode | sessionMode | Select session behavior when user reconnects to application. 1.ALWAYS_NEW_SESSION: New application is started for every Webswing session. (Session timeout will be set to 0) 2.CONTINUE_FOR_TAB: Webswing session can be resumed by the same user within the same browser tab after connection is terminated or user refresh the page. (Session timeout applies) 3.CONTINUE_FOR_BROWSER: Webswing session can be resumed by the same user in the same browser after connection is terminated (Session timeout applies). 4.CONTINUE_FOR_USER: Application session can be resumed by the same user from any computer after the connection is terminated (Session timeout applies). 5.CONTINUE_FOR_ANYONE: Application session can be resumed by any user from any computer after the connection is terminated (Session timeout applies). | CONTINUE_FOR_BROWSER | SessionMode |
|
| Max. Connections | maxClients | Maximum number of simultaneous connected sessions for this application. | 1 | String |
✅ |
| Max. Connections Per User | maxClientsPerUser | Maximum number of simultaneous connected sessions for this application per user. Use -1 for unrestricted. | -1 | String |
✅ |
| Session Stealing | allowStealSession | If enabled, and session mode 'CONTINUE_FOR_USER' is selected, user can resume Webswing session even if the connection is open in other browser. Former browser window will be disconnected. | true | boolean |
|
| Auto Logout | autoLogout | If enabled, user is automatically logged out after application shutdown or after disconnect due to inactivity timeout. | true | boolean |
|
| Goodbye URL | goodbyeUrl | Absolute or relative URL to redirect to, when application exits. Use '/' to navigate back to Application selector. | String |
✅ | |
| Monitor App Responsiveness | monitorEdtEnabled | If True, Webswing will display a progress animation if Swing's Event Dispatch thread is not responding. | true | boolean |
|
| Loading Animation delay | loadingAnimationDelay | If EDT thread is blocked for more then defined delay in seconds, dialog with loading animation is displayed appears. Delay must be >= 2 seconds. | 2 | int |
|
| Allow Session Recording | recordingAllowed | true | boolean |
||
| Require Recording Consent | recordingConsentRequired | If enabled, triggering Session recording from admin console will show a dialog for users to provide their consent before Session recording is started | false | boolean |
|
| Allow Session Mirroring | mirroringAllowed | true | boolean |
||
| Require Mirroring Consent | mirroringConsentRequired | If enabled, triggering Mirror View from admin console will show a dialog for users to provide their consent before Mirror View is started | false | boolean |
|
| Upload Size Limit | uploadMaxSize | Maximum size of upload for single file (in MB). Set 0 for unlimited size. | 5 | double |
|
| Data Store | dataStore | WebswingDataStoreConfig |
|||
| Javascript Bootstrap Options | bootstrapOptions | Set advanced bootstrap options used to initialize javascript client. Some of these options can be overridden in custom index.js using Webswing Javascript API. | List<BootstrapOptionsEntry> |
||
| BlackList | blacklist | Blacklisted features | List<String> |
||
| WhiteList | whitelist | Whitelisted features | List<String> |
FileViewerConfig
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement |
|---|---|---|---|---|---|
| Operations | operation | Specifies the AWT Desktop action performed on the file, such as open, edit, print or a combination (e.g. open_edit). | OperationTypes Enum Values: open, edit, print, open_edit, open_print, print_edit, open_edit_print |
||
| File type | fileType | Comma separated list of file extension (e.g. pdf, gif) | String |
||
| URL | url | File viewer relative URL. Use ${file} in the URL template to insert the blob identifier. Use '${file}' value to trigger the browser's default action for the file. | String |
WebswingDataStoreConfig
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement |
|---|---|---|---|---|---|
| Direct Transfer | directTransfer | If enabled, file transfer between browser and application will use WebSocket connection. Use this option if your deployment doesn't allow shared access to single data store. | true | boolean |
|
| Data Store Module Class Path | classPath | Additional classpath for built-in data store module or for defining custom data store module. | List<String> |
✅ | |
| Data Store Module Name | module | Select one of built-in modules or enter full class name of custom data store module (has to implement org.webswing.server.common.datastore.WebswingDataStoreModule interface). Note the class and its dependencies has to be on classpath defined above. | INHERITED | String |
|
| Data Store Module Config | config | Data store module specific configuration. | FileSystemDataStoreModuleConfig |
BootstrapOptionsEntry
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement |
|---|---|---|---|---|---|
| Setting | setting | String |
|||
| Value | value | String |
✅ |
Bootstrap Options
| Name | Description | Default value | Type |
|---|---|---|---|
| applicationBusyDialogDismissPeriod | A timeout to auto-hide an applicationBusy dialog. | 2000 | int |
| audioBeepSrc | Source of audio to be used as Toolkit.beep. A string containing the URL of an audio file (e.g. 'data:audio/wav;base64,//uQRAA...'). | string | |
| audioPlaybackPingPeriod | An interval to send information to app about audio file being played. | 1000 | int |
| autoReconnect | A timeout to wait before making a reconnect attempt. This setting can be overridden in JS webswing options. | int | |
| canvasResizeCheckPeriod | An interval to check changes to viewport (size, DPR) and to notify application. | 500 | int |
| continueOldSessionDialogDismissPeriod | A timeout to auto-hide a continueOldSession dialog. | 5000 | int |
| debugLog | Enable debug log level for direct draw rendering. Messages are logged into browser console. Enable only for testing and debugging purposes. This setting can be overridden in JS webswing options. Default is false. | boolean | |
| directDownloadCleanupExpiration | How much time must pass after the direct download has finished to be cleaned up. | 120000 | int |
| directDownloadCleanupInterval | An interval to clean up information about finished downloads using direct transfer. | 3000 | int |
| directUploadChunkSize | The size of an upload chunk in bytes when uploading file through websocket using direct transfer. | 131072 | int |
| disableAppDocumentTitle | Disable setting browser window title based on Swing window title. This setting can be overridden in JS webswing options. Default is false. | boolean | |
| disableLogout | Do not show logout buttons and links in Webswing dialogs. This setting can be overridden in JS webswing options. Default is false. | boolean | |
| disposeCanvasOnDisconnect | If set to 'false' already rendered canvases will remain visible after connection to server closes. | true | boolean |
| fetchTimeout | A timeout to wait before cancelling a fetch request in javascript. | 7000 | int |
| findHiddenWindowsPeriod | An interval to find windows that do not currently render anywhere. Shows a notification with option to re-open or dispose hidden windows. | 3000 | int |
| findHiddenWindowsThreshold | How much time must pass after last sign of window being rendered before it is considered a hidden window. | 5000 | int |
| hideDropTargetsPeriod | A delay to hide drop target overlays when using Direct Drag'n'Drop. | 250 | int |
| hideTouchBar | Hide touch bar in touch mode. This setting can be overridden in JS webswing options. Default is false. | boolean | |
| inputSendPeriod | How often should the input messages (mouse, key) be sent to server (in milliseconds). | 10 | int |
| javaCallTimeout | Timeout for JS link call from browser to app. If the timeout is exceeded an error is thrown into browser console. This setting can be overridden in JS webswing options. | 3000 | int |
| killWhenPopupBlocked | Kill application instance in case a popup blocker has been detected, which prevented opening an undocked window. Default is false. | boolean | |
| pingCount | How many ping measures to keep in memory for network quality warning. This setting can be overridden in JS webswing options. | 6 | int |
| pingInterval | How often webswing will check latency. This setting can be overridden in JS webswing options. | 5 | int |
| pingMaxLatency | Threshold of latency in ms for network quality warning. This setting can be overridden in JS webswing options. | 500 | int |
| pingNotifyIf | How many of the ping requests need to be above the measure to notify user about network quality. This setting can be overridden in JS webswing options. | 3 | int |
| pingUrl | Url for measuring latency, defaults to url in webswing server. This setting can be overridden in JS webswing options. | string | |
| preventWheelEvent | Prevent default wheel event processing when dispatched over Webswing elements. | true | boolean |
| requestComponentTreeWaitTime | How much time to wait before rejecting Promise when requesting component tree from application. | 10000 | int |
| requestTabCloseTimeout | A timeout to close tab. | 1000 | int |
| servletHeartbeatPeriod | An interval to refresh current session login. | 120000 | int |
| sessionTimeoutWarningDialogDismissPeriod | A timeout to auto-hide a sessionTimeoutWarning dialog. | 2000 | int |
| syncClipboard | Automatically synchronize clipboard contents copied outside of browser running Webswing app. This setting can be overridden in JS webswing options. | true | boolean |
| tabHeartbeatCleanupPeriod | An interval for cleanup of browser window (tab) heartbeat stored in local storage. | 5000 | int |
| tabHeartbeatCleanupThreshold | How much time must pass after the last heartbeat to clean it up from local storage. | 60000 | int |
| tabHeartbeatPeriod | An interval which stores a heartbeat of a browser window (tab) to local storage. | 1000 | int |
| tabHeartbeatThreshold | How much time must pass after last sign of window to be considered not alive. This is used when forcing activation of a window (i.e. bring to front). | 3000 | int |
| taskbarAutoHide | Automatically hide taskbar if there are less than 2 windows. | true | boolean |
| taskbarEnabled | When enabled, Webswing shows a taskbar button which can be used to restore minimized windows. The taskbar can be moved freely in browser window and stores the last position. Default is false. | boolean | |
| taskbarSnap | Snap taskbar button to browser window borders. | true | boolean |
| touchDoubleTapDelayThreshold | An upper limit to consider a second tap to be a double tab and emit a double click event. | 500 | int |
| touchLongPressStartTimeoutPeriod | A timeout after which the long press animation will start after first tap. | 50 | int |
| touchModeAutoSwitch | Automatically switch between mouse (pointer) mode and touch mode when a pointer moves or touch is detected. Default is false. | boolean | |
| touchScaleHidePeriod | A timeout to auto-hide scale UI. | 3000 | int |
| touchScaling | Enable scaling using pinch gesture (experimental). Default is false. | boolean | |
| touchStaticScale | Enable static scaling. A CSS zoom is applied to renered canvases. The zoom value is determined as a minimum of ratios: realWidth/touchStaticScaleWidth, realHeight/touchStaticScaleHeight. Default is false. | boolean | |
| touchStaticScaleHeight | A fixed height to apply when calculating a ratio for static scaling. | int | |
| touchStaticScaleWidth | A fixed width to apply when calculating a ratio for static scaling. | int | |
| touchSwipeScroll | Enable to scoll by touch swiping inside scrollable components. Default is false. | boolean | |
| touchTapDelayThreshold | An upper limit to consider tap a single tap. After the threshold the tap is considered a long press. | 750 | int |
| touchTapMoveThreshold | A limit in pixels, both vertical and horizontal, after which a tap/long-press is cancelled and is considered a move/drag instead. | 10 | int |
| touchToastPeriod | A timeout to auto-hide a toast message after pressing a button from touch bar. | 2000 | int |
| traceLog | Enable trace log level for direct draw rendering. Messages are logged into browser console. Enable only for testing and debugging purposes. This setting can be overridden in JS webswing options. Default is false. | boolean | |
| undockCanvasResizePeriod | An interval to check whether the canvas inside undocked window has changed its size so that the browser window can resize. | 250 | int |
| undockCheckPeriod | An interval for multiple checks: 1. Auto-resize canvas to browser window size when resized by user. 2. Check if there are any canvases rendered, otherwise auto-close the undocked window. 3. Notify application about changed browser window position when moved by user. | 1000 | int |
| undockPendingEventExpiration | How long to consider a request to undock a window to be expired. | 3000 | int |
| useWindowTop | Use window.top in login flow for building login-related URLs. This setting can be overridden in JS webswing options. | true | boolean |
FileSystemDataStoreModuleConfig
| Admin console label | Config field Id | Description | Default value | Type | Variable replacement |
|---|---|---|---|---|---|
| Transfer Folder | transferFolder | Folder to be used to store application uploads and downloads. This folder must be accessible by application and server. | ${" + Constants.ROOT_DIR_PATH + "}/datastore/transfer | String |
✅ |