Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 23 Next »

Using the Servoy Smart Client, solutions developed in Servoy can be distributed to end users.

In this chapter

Characteristics of a Smart Client

  • Installs automatically on initial launch
  • Automatically updates when a new version is available
  • Native application
  • Executes business logic locally
  • Can interact with the local file system
  • Can interact with local appliances connected to the client machine
  • Is connected to the Servoy Application Server to utilize services provided by the Application Server

While running, the Smart Client is connected to the Application Server to utilize the services provided by the Application Server, like database connectivity, datachange broadcasting, emailing and reporting for example.

Servoy Smart Clients are launched and distributed from the Servoy Application Server using Java Web Start Technology.

Prerequisites

Servoy Smart Client
Windows Linux OS X
Intel Pentium or higher
256Mb RAM
50Mb Free diskspace
Java Standard Edition Runtime Environment 6.0 or higher
Intel Pentium or higher
256Mb RAM
50Mb Free diskspace
Java Standard Edition Runtime Environment 6.0 or higher
Intel CPU 1 Ghz or higher
256Mb RAM
50Mb Free diskspace
Mac OS X 10.4 or higher
Java Standard Edition Runtime Environment 6.0 or higher
Networking: TCP/IP

Network settings
In order to be able to start and run Smart Clients the Application Server needs to be properly reachable from the machine on which the Smart client is to be started. Depending on the network route from the client machine to the server, different configuration might need to be applied. See Network Settings for more information.

Java Standard Edition Runtime Environment version 5.0 or higher, including Java Web Start
A Smart Client requires Java Standard Edition Runtime Environment (JRE) version 5.0 or higher to operate and Java Web Start to launch. Java Web Start is included in JRE. On most machines, this will be included by default.

The Servoy installation contains a webpage that can be used to check if a valid JRE is installed and if not, to automatically install it. This page can be accessed in the browser through the following url: <serverUrl>/autoinstallvm.html.

The JRE can also be manually downloaded and installed. See Java runtime for more information.

Installing Smart Clients

Smart Clients install themselves on first launch. On first launch, the Java Web Start process will install the Smart Client in a cache on the client machine. On subsequent starts, the Java Web Start mechanism will check to see if the application is already cached and will start from the cache if available.

On start, it will validate the version in the cache with the version available on the Application Server and will automatically update when a new version is available.

The Smart Client will automatically install itself the first time it is launched.

The first-time launch of a Smart Client is performed by accessing the the relevant URL on the Application Server (see #Starting Smart Clients). All required libraries will be automatically downloaded and locally cached by the Java Web Start process. The started solution will be cached by the Smart Client in the Servoy cache.

On subsequent launches, the Smart Client/solution will launch from the cache. On start it will check with the Application Server for new versions and will automatically download and install these when available.

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

Starting a Servoy Smart Client is done 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.

By default, the Servoy Application Server comes with a web page for starting Smart Clients. This web page also provides a link to check if a Java Standard Edition Runtime Environment is installed. This web page is located at <serverUrl>/index.html

Solution Select Dialog
<serverUrl>/servoy-client/servoy_client.jnlp
Deeplink into specific solution
<serverUrl>/servoy-client/mySolutionName.jnlp
Specify the method to execute on startup
<serverUrl>/servoy-client/mySolutionName.jnlp?m=myMethodName
Specify startup arguments
<serverUrl>/servoy-client/mySolutionName.jnlp?a=value
Specify the method to execute & startup arguments
<serverUrl>/servoy-client/mySolutionName.jnlp?m=myMethodName&a=value
Specify the startup argument & named arguments
<serverUrl>/servoy-client/mySolutionName.jnlp?a=value&name1=value1&name2=value2
Specify the method to execute, the startup argument & named arguments
<serverUrl>/servoy-client/mySolutionName.jnlp?m=myMethodName&a=value&name1=value1&name2=value2
Unable to render {include} The included page could not be found.

Deeplinking into existing Smart Client
When a user already has a Smart Client open, it's possible to provide the user 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 this deeplinking into existing Smart Clients, the servoy.allowExistingClientActivate setting on the Admin page needs to be set to true. When set to true, if a Smart Client is already opened on the users machine and from that machine the deeplink url is called that specifies a deeplink method, instead of opening a new Smart Client, the method is invoked inside the existing Smart Client.

?x=x

The deeplinking into an existing Smart Client is partly based on 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>/servoy-client/mySolutionName.jnlp?x=x

Smart Client footprint

A Smart Client has a very small footprint on the client machine. For startup performance reasons, both the Smart Client libraries as well as the Servoy Solution binaries are cached.

Java Web Start cache
Contains the cached libraries for the Smart Client, beans & plugins. Location depends on the #Java Settings.

Servoy cache
Contains cached solutions, i18n-messages and client settings. Located in the .servoy directory in the user directory

Java Settings

A JRE installation can be configured through the

Trouble shooting

  • Memory issues
  • Connection issues

Enable wire logging
In case of connection issues between the Smart Client and the Application Server and all

  • No labels