Nella configurazione tipica dei server di applicazioni, la definizione dell'azione si trova nello stesso sistema in cui risiede l'eseguibile dell'applicazione. Tuttavia, è possibile scrivere azioni che eseguano comandi su altri sistemi. In questa configurazione, il sistema contenente l'applicazione viene detto host di esecuzione.
La definizione dell'azione può essere collocata nel server delle sessioni o in un sistema che fornisca le azioni e i tipi di dati a questo server, detto server di database o host di database.
Le definizioni delle azioni utilizzano il campo EXEC_HOST
per specificare la posizione in cui dovranno essere
eseguiti i relativi comandi (EXEC_STRING). Ad esempio,
l'azione seguente specifica che il client xload verrà
eseguito su un sistema con nome host SysDDD:
ACTION XloadSysDDD { TYPE COMMAND EXEC_HOST SysDDD EXEC_STRING /usr/bin/X11/xload -label SysDDD }
Se il campo EXEC_HOST
specifica
più nomi host, il desktop cercherà di eseguire il comando di EXEC_STRING su tutti gli host seguendo l'ordine indicato, fino a
quando ne troverà uno che possa eseguire l'azione. Ad esempio, il seguente
campo EXEC_HOST
specifica che
l'azione dovrà cercare inizialmente di eseguire il comando EXEC_STRING su SysDDD, e quindi, se non dovesse
riuscire, dovrà provare su SysEEE.
EXEC_HOST SysDDD,SysEEE
Se il campo EXEC_HOST
di
un'azione non viene impostato, esso assume il valore predefinito %HostDatabase%. Il valore di %HostDatabase% viene
ricavato dal percorso di ricerca del database.
Ad esempio, si supponga che il percorso di ricerca del database sia stato modificato con l'aggiunta della riga seguente a /etc/dt/config/Xsession.d/0010.dtpaths:
DTSPSYSDATABASEHOSTS=SysAAA:,/net/SysBBB/etc/dt/appconfig/types/C
SysAAA viene specificato usando la sintassi di host qualificato, SysAAA:. Un'azione trovata usando questo elemento del percorso di ricerca imposterà l'host del database su SysAAA. Tuttavia, un'azione trovata usando la porzione /net/SysBBB… del percorso di ricerca imposterà l'host del database sul sistema locale, poiché questa sintassi non include il qualificatore dell'host.