Page History
...
Desktop integration
The Smart Client can automatically integrate with the desktop of the client machine. Whether or not this happens depends on both client-side settings in the Java environment as well as server-side settings on the Application Server. See #Java settings for more information on the client-side Java settings and Smart Client Settings for more information on the Application Server settings.
Starting Smart Clients
...
By default, the Servoy Application Server comes with a web page for starting Smart Clients, located at {serverUrl}/index.html. This web page also provides a link to check if a Java Standard Edition Runtime Environment is installed.
Servoy Smart Client can also be started by accessing a URL on the Servoy Application Server. Depending on the configuration of the Servoy Application Server, an icon might be placed on the users desktop to start the application thereafter.
Deeplink Smart Client Start URL | What is does | |
---|---|---|
{serverUrl}/servoy-client/servoy_client.jnlp | Opens a Smart Client and shows the "Select Solution" dialog. The "Select Solution" dialog will not be displayed if solution browsing is disabled, see #Solution browsing. In this case the user will not be able to open a solution. | |
{serverUrl}/servoy-client/{mySolutionName}.jnlp | Opens a Smart Client and launches the specified solution | |
{serverUrl}/servoy-client/mySolutionName.jnlp?a={value} | Opens a Smart Client and launches the specified solution. The argument value is passed into the Solutions onOpen event handler. | |
{serverUrl}/servoy-client/{mySolutionName}.jnlp?a={value}&{name1}={value1}&{name2}={value2} | The same as the previous scenario, but with additional custom keys for additional arguments | |
{serverUrl}/servoy-client/{mySolutionName}.jnlp?m={myMethodName} | Opens a new Smart Client OR activates an already running Smart Client. Activation of an existing Client is only possible when enabled, see #Deeplinking into existing Smart Client for more info. | |
{serverUrl}/servoy-client/{mySolutionName}.jnlp?m={myMethodName}&a={value} | The same as the previous scenario, but specifying a single value to be passed as an argument into the onOpen event handler and deeplink method | |
{serverUrl}/servoy-client/{mySolutionName}.jnlp?m={myMethodName}&a={value}&{name1}={value1}&{name2}={value2} | The same as the previous scenario, but with additional custom keys for additional arguments |
Include Page | ||||
---|---|---|---|---|
|
Solution browsing
}By default, when using the first option above to launch a Servoy Smart Client (or through the default web page for starting Smart Clients mentioned earlier), when the Smart Client is started, the user will be presented with a list of all available solutions. Through the servoy.allowSolutionBrowsing option under Solution Settingson on the Admin page of the Application Server, this dialog can be disabled. When disabled, the deeplink options that specify the solution must be used .
...
Profiles
...
The Application Server provides settings that influence the Smart Client behavior, for example in the area of how the Application Servoy and the Smart Client communicate. When one (group of) Smart Client(s) require different settings than the other one, the Application Server provided Profiles. Using Profiles, settings can be bundled under a named Profile. Smart Clients can connect to the Application Server using a particular profile by adding the Profile name to the URLs mentioned above. For example:
Code Block | ||
---|---|---|
| ||
<serverUrl>/servoy-client/<profileName>/mySolutionName.jnlp |
Profiles can be used in all the above mentioned URL's to start or deeplink to Smart Clients.
Profiles can also contain all the additional arguments that can be specified on the above mentioned URLs, like solution, method, arguments, named arguments (name1, name2 etc.). Both the short and long syntax are supported.
For more information on Profiles, see Profiles.
...
Deeplinking into existing Smart Client
...
When a user already has a Smart Client open, it's possible to provide the user with a URL that deeplinks to a method in the open solution. When the URL is opened, it will access the Application Server and the Application Server then contacts the existing Smart Client and executes the specified method.
To enable deeplinking into existing Smart Clients, the servoy.allowExistingClientActivate setting or else the user is presented with a Smart client without an option to start a solution.
...
Activating existing Smart Clients through deeplinks
...
Servoy provides the ability to execute a method in an already running Smart Client using the standard Smart Client start url's, if the url contains a deeplink method ("&m={methodName}"). In order for a deeplink into an existing Smart Client to work, the following conditions need to be met:
- The servoy.allowExistingClientActivate setting on the Admin page needs to be set to true
...
- The already running Smart Client needs to be started using a URL
- The deeplink url to activate the already running Smart Client needs to be handled through the same browser/application with which the already running Smart Client was launched
- The browser/application used to handle the deeplink url/launch the already running Smart Client must support Cookies
- The deeplink url must contain a deeplink method: "&m={methodName}"
If any of these conditions are not met, the deeplink will result in the opening of a new Smart Client
Note | ||
---|---|---|
| ||
The deeplinking into an existing Smart Client is partly based on browser cookies. When starting the Smart Client from, for example a desktop shortcut, while deeplink from within an email in a mail client, it can happen that the first deeplink from the mail client opens a new Smart Client anyway. A possible workaround for this is added '?x=x' to the shortcut's URL, like <serverUrl>{serverUrl}/servoy-client/{mySolutionName}.jnlp?x=x |
...
Profiles
...
The Admin page of the Servoy Application Server exposes several settings that determine how the Smart Client communicates with the Application Server. As it can happen that one (group of) Smart client(s) requires different settings than other Smart Clients, the Application Server supports so-called Profiles.
Profiles, identified by a unique name, can contain one or more settings relevant to the Smart Client. The values for settings specified in a Profile override the value for those settings set on Application server level, when the Smart Client is connecting to the Application Server through the Profile
In order for a Smart Clients to connect to the Application Server using a particular profile, the Profile name needs to be added to the URLs mentioned above. For example:
Smart Client Start URL | What is does |
---|---|
{serverUrl}/servoy-client/{profileName}/{mySolutionName}.jnlp | Opens a Smart Client and launches the specified solution, while using the settings provided in the specified Profile |
For more information on Profiles and an overview of which settings can be controlled through them, see Profiles.
Smart Client settings
- Server-side settings
- Client-side settings
...