Es ist nicht unüblich, einer Applikation, bereits beim Start diverse Parameter zu übergeben damit die Applikation bereits bei der Initialisierung darauf Rücksicht nehmen kann. Solche Parameter wären z.B. der Log Level, das Look and Feel, ein beliebiger Benutzername, uvm.
Es gibt mehrere Möglichkeiten um Applikationsparameter zu definieren. Je nachdem in welcher Technologie die Applikation betrieben wird, ist die eine oder andere Variante geeignet:
Unabhängig davon, wie die Applikationsparameter definiert werden, erfolgt der Zugriff auf die vorhandenen Parameter immer einheitlich über den Launcher. Dieser definiert dafür folgende Methoden:
public String getParameter(String pName); public void setParameter(String pName, String pValue);
Die Methode zum Setzen eines Parameters verändert den Parameter nur innerhalb der Anwendung. Wenn die Anwendung beendet wird ist auch die Änderung verloren.
in Kommandozeilenparameter wird entweder beim Start der Applikation, in der IDE, definiert oder beim manuellen Aufruf direkt übergeben. Der Parameter muss wie folgt definiert werden:
name=wert
or
"name=wert"
Wenn die Anwendung als RIA oder Web Anwendung gestartet wird, können in üblicher Art und Weise die Parameter an den URL angehängt werden:
http://hostname/index.html?param=value¶m2=value2
Im Falle einer RIA Anwendung müssen die Konventionen des Java Plugins eingehalten werden:
<APPLET ...> <PARAM NAME = "param" VALUE = "value" /> </APPLET>
oder
<EMBED ... param = "value" />
Wenn die HTML Datei in Kombination mit URL Parametern verwendet wird, so überschreiben die Parameter aus der HTML Datei gleichnamigen Parameter.
Die Parameter für eine Web Anwendung können durch den Deployment Deskriptor (web.xml) definiert werden:
... <servlet> <servlet-name>WebLauncherServiceImpl</servlet-name> <servlet-class>com.sibvisions.rad.ui.gwt.server.WebLauncherServiceImpl</servlet-class> <init-param> <param-name>param</param-name> <param-value>value</param-value> </init-param> </servlet>
Die Parameter aus dem Deployment Deskriptor überschreiben die gleichnamigen Parameter aus dem URL oder einer HTML Datei.
Beim Start der Applikation ermittelt der Launcher (optionale) Parameter aus einer XML Konfiguration. Wenn nicht anders definiert, wird die Datei application.xml eingelesen. Die Datei sollte folgenden Aufbau haben:
<?xml version="1.0" encoding="UTF-8"?> <application> ... <param>value</param> <param2>value2</param2> </application>
Die Datei sollte im selben Pfad wie die Application Implementierung zu finden sein (Verzeichnis, jar, URL). Die Datei kann aber auch vom Entwickler definiert werden. Entweder als Kommandozeilenparameter (2. Parameter) oder durch die Angabe des Parameters config, z.B.: config=/package/app.xml in der URL oder HTML Datei.
Wenn die XML Konfiguration in Kombination mit Kommandozeilen-, URL oder HTML Parametern verwendet wird, so überschreiben die Parameter aus der XML Datei gleichnamigen Parameter.