This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information

--Verwenden von Client/Server Properties

Dokumente für die Entwicklung von und mit JVx.

--Verwenden von Client/Server Properties

Postby Development@SIB » Tue Sep 29, 2009 4:05 pm



Dieser Artikel ist veraltet - Bitte verwenden Sie unser neues System

https://doc.sibvisions.com





Die Client/Server Properties werden verwendet um Informationen über den Client zum Server und vom Server zum Client zu übertragen. Die Übertragung von Properties ist bereits ins Kommunikationsprotokoll integriert und bedarf keiner speziellen Behandlung.

Bei der Übertragung werden nur neue, geänderte oder gelöschte Properties berücksichtigt. Weiters werden nur Strings, Numerische und Boolsche Werte übertragen jedoch keine serialisierbaren POJOs. Es wird garantiert, daß am Server und Client dieselben Properties zur Verfügung stehen und zum Zeitpunkt des Zugriffs synchronisiert sind.

Wenn eine Property am Client gesetzt wird, dann löst das nicht in allen Fällen eine sofortige Übertragung zum Server aus. Die Properties werden im Normalfall bei der nächsten Kommunikation vollautomatisch berücksichtigt. Es gibt jedoch auch Properties für die dies nicht zutrifft. Dabei handelt es sich um Properties mit denen spezielle Einstellungen wie z.B Timeouts gesteuert werden.

Die Properties werden am Client mit der Connection Klasse gesetzt:

Code: Select all
MasterConnection macon = new MasterConnect(createConnection());

macon.setProperty(IConnectionConstants.PREFIX_CLIENT + "language", "de_AT");

Die Properties werden als Key/Value Paar definiert. Der Key kann grundsätzlich beliebig gewählt werden. Es gibt jedoch vordefinierte Kategorien die durch IConnectionConstants PREFIX_CLIENT, PREFIX_SERVER, PREFIX_SESSION, PREFIX_SYSPROP und PREFIX_REQUEST festgelegt sind.

Alle Properties die mit PREFIX_SERVER + PREFIX_SESSION beginnen, lösen eine sofortige Übertragung vom Client zum Server aus wenn die Verbindung bereits hergestellt wurde. Und Properties mit dem PREFIX_CLIENT dürfen nur verändert werden, solange die Verbindung zwischen Client und Server noch nicht hergestellt wurde.

Beim Aufbau einer Verbindung werden bereits einige vordefinierte Properties gesetzt, wie z.B.:

PREFIX_CLIENT + PREFIX_SYSPROP + "user.name" mit System.getProperty("user.name")
PREFIX_CLIENT + PREFIX_SYSPROP + "os.name" mit System.getProperty("os.name")
PREFIX_CLIENT + PREFIX_SYSPROP + "os.version" mit System.getProperty("os.version")
...
...

PREFIX_CLIENT + "spec_version" mit javax.rad.IPackageSetup.SPEC_VERSION

Am Server werden die Properties direkt in die Session gesetzt. Die Session ist über den SessionContext verfügbar:

Code: Select all
SessionContext.getCurrentSession().setProperty("name", "value");

Auch Serverseitig werden beim Initialisieren der Session bereits Properties gesetzt:

PREFIX_SERVER + PREFIX_SYSPROP + "user.name" mit System.getProperty("user.name")
PREFIX_SERVER + PREFIX_SYSPROP + "os.name" mit System.getProperty("os.name")
PREFIX_SERVER + PREFIX_SYSPROP + "os.version" mit System.getProperty("os.version")
...
...

PREFIX_SERVER + "server_version" mit com.sibvisions.rad.IPackageSetup.SERVER_VERSION
PREFIX_SERVER + "spec_version" mit javax.rad.IPackageSetup.SPEC_VERSION
PREFIX_SERVER + "hostname" mit dem Namen des Rechners auf dem der Server läuft
PREFIX_SERVER + "address" mit der IP Adresse des Rechners auf dem der Server läuft
User avatar
Development@SIB
 
Posts: 325
Joined: Mon Sep 28, 2009 1:54 pm

Return to Documentation (DE)