Java applety systému Control Web
Applet je program napsaný v Javě, který obsahuje vazby umožňující prohlížeči nahrát jej jako součást WWW stránky a spustit na klientském počítači.
Jedná se tedy o aplikaci běžící v prostředí prohlížeče HTML stránek.
Systém Control Web je doplněn sadou appletů, které umožňují vložit do HTML stránky objekty zobrazující některé přístroje systému Control Web.
Tyto applety komunikují s aplikací běžící v systému Control Web a zobrazují (případně nastavují) hodnotu zvolené
proměnné.
Applet lze vložit do HTML dokumentu pomocí následujících příkazů:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Meter.Meter.class"
- WIDTH = 200
- HEIGHT = 120
- VSPACE = 5
- HSPACE = 5
- NAME = "..."
- ALT="Applet nebyl spuštěn"
- ALIGN=LEFT
>
<PARAM name="name1" value="value1">
<PARAM name="name2" value="value2">
.
.
.
- </APPLET>
Význam parametrů:
- CODEBASE
Cesta k adresáři obsahujícímu třídy appletů (class soubory), pokud jsou v jiném adresáři, než který obsahuje HTML soubory.
Atribut CODEBASE může být adresář na tomtéž nebo i na jiném počítači. Pokud atribut CODEBASE není v tagu APPLET uveden,
použije prohlížeč k nalezení class souborů aktuální adresář (t.j. adresář obsahující HTML soubory).
Třídy appletů (class soubory) systému Control Web jsou instalovány
do základního adresáře MII. Parametr tedy obsahuje cestu do adresáře, do nějž byl adresář MII vložen. Cesta může být absolutní,
nebo relativní vzhledem k HTML souboru.
- CODE
Jméno souboru (plný název, včetně jména balíku), který obsahuje třídu použitou v HTML stránce.
- WIDTH a HEIGHT
Šířka a výška okna, v němž applet běží. Hodnoty jsou zadávány v pixelech.
- HSPACE a VSPACE
Velikost místa v pixelech, jenž prohlížeč vloží mezi applet a objekty, jež ho obklopují. VSPACE nastavuje vertikální vzdálenosti (nad appletem a pod ním),
HSPACE nastavuje horizontální vzdálenosti (nalevo a napravo).
- NAME
Jméno instance appletu. Pomocí něj mohou ostatní applety na stránce komunikovat s touto instancí.
- ALT
Text, který zobrazí prohlížeč nepodporující Javu, jakmile narazí na tag APPLET.
- ALIGN
Nastavení polohy appletu relativně vzhledem k ostatním objektům na stránce. Při umísťování okna appletu mohou nastat
dvě situace: v prvním případě je applet blok, okolo kterého text obtéká, ve druhém případě je applet zařazen do textu a chová se jako by byl jedním
velkým písmenem. Způsob umísťování appletu v prohlížeči lze zvolit pomocí následujících hodnot atributu ALIGN:
- LEFT
Applet se umístí k levému okraji stránky. Text vyplňuje pravou část stránky.
- RIGHT
Applet se umístí k pravému okraji stránky. Text vyplňuje levou část stránky.
- TOP
Horní okraj appletu se umístí na horní okraj textu.
- BOTTOM
Spodní okraj appletu se umístí na spodní okraj textu.
- MIDDLE
Střed appletu se umístí na základní linku textu.
- ABSMIDDLE
Střed appletu se umístí na střed textu.
- BASELINE
Spodní okraj appletu se umístí na základní linku textu.
- ABSBOTTOM
Spodní okraj appletu se umístí na spodní okraj textu.
- PARAM
Z HTML stránky lze předat appletům parametry ovlivňující činnost appletu. U každého parametru musí
být zadáno jeho jméno a hodnota. Počet, typ a význam parametrů závisí na konkrétním appletu a budou
popsány v kapitole Parametry přístroje a v kapitolách popisujících jednotlivé
applety.
Systém Control Web je doplněn sadou appletů, jejichž třídy odpovídají některým přístrojům systému
Control Web.
Tyto třídy lze umístit do HTML stránky a pomocí nich zpřístupnit (vizualizovat i řídit) aplikaci běžící v systému
Control Web z WWW prohlížeče přes TCP/IP síť. Přitom na straně klienta (WWW prohlížeče) není zapotřebí instalovat
Control Web runtime ani žádnou jinou část
systému Control Web.
Applety jsou distribuovány v přeložené formě jako sada class souborů. V každém class souboru je přeložen kód jedné třídy.
Každý applet se ovšem může skládat z více tříd. Dodávané class soubory jsou organizovány do tzv. balíků uložených do
samostatných adresářů, které jsou umístěny v základním adresáři mii\cw. Každý adresář obsahuje třídy jednoho appletu a jeho
nazev je shodný s názvem appletu. Do HTML stránky je třeba vložit hlavní třídu z příslušného balíku, jejíž název je opět shodný
s názvem appletu. Při vkládání appletu do HTML stránky, je v parametru CODE potřeba uvést úplný název třídy. T.j. včetně názvu
balíku, ve kterém se třída nachází (např. mii.cw.Control.Control.class).
Applety jsou instalovány současně s instalací systému Control Web do kořenového
adresáře systému (např.: "C:\Program Files\Control Web").
-
- v HTML stránce je třeba vytvořit komunikační applet vložením třídy mii.cw.Net.Net.class.
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Net.Net.class"
- WIDTH = 0
- HEIGHT = 0
- NAME = "Net">
- <PARAM NAME = "host_name" VALUE = "194.108.72.1">
- <PARAM NAME = "module_name" VALUE = "C:\CW\PROG\TEST.CWX">
- <PARAM NAME = "time_out" VALUE = 5000>
- </APPLET>
Příkaz APPLET musí mít uvedeny parametry:
-
- CODE s názvem třídy Net.class
- NAME se symbolickým jménem instance appletu
- WIDTH a HEIGHT nastavené na hodnotu 0
Komunikační třída musí mít uvedeny parametry:
-
- host_name s IP adresou počítače na kterém běží aplikace systému Control Web
- module_name s plnou cestou k aplikaci
-
Komunikační třída naváže spojení s aplikací systému Control Web a vytvoří TCP/IP
spojení. Pomocí tohoto spojení pak mohou s aplikací komunikovat všechny applety přístrojů umístěné na stejné HTML stránce.
- vložit applety přístrojů
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Control.Control.class"
- WIDTH = 200
- HEIGHT = 200>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "realVar">
- <PARAM NAME = "range_to" VALUE = 200>
- <PARAM NAME = "time_step" VALUE = 1000>
- </APPLET>
Příkaz APPLET musí mít uvedeny parametry:
-
- CODE s názvem třídy příslušného přístroje
- WIDTH a HEIGHT nastavené na požadovanou velikost appletu
Třída přístroje musí mít uvedeny parametry:
-
- net_name se jménem komunikačního appletu definovaným při jeho vytváření
- var_name se jménem proměnné aplikace systému Control Web,
jejíž hodnotu bude applet zobrazovat, případně nastavovat
- další parametry podle typu přístroje
- v hlavním menu prohlížeče otevřít podmenu "Nástroje"
- vybrat položku "Možnosti sítě Internet"
- v dialogu "Možnosti sítě Internet" zvolit záložku "Zabezpečení"
- nastavit parametr "Zóna" na "Zóna sítě Internet"
- nastavit parametr "Úroveň zabezpečení zóny" na "Vlastní"
- tlačítkem "Nastavení" otevřít dialogové okno "Nastavení zabezpečení"
- ve stromu parametrů vybrat větev "Java" a nastavit parametr "Povolení pro jazyk Java" na hodnotu "Vlastní"
- tlačítkem "Uživatelské nastavení pro jazyk Java" otevřít dialogové okno pro změnu oprávnění
- vybrat záložku "Upravit oprávnění"
- nastavit parametr "Nepodepsaný obsah\Spustit nepodepsaný obsah\Další nepodepsaná oprávnění\Přístup ke všem adresám v síti"
na hodnotu "Povolit".
Činnost přístrojů je upravována pomocí parametrů předávaných z HTML stránky. U každého parametru musí být uvedeno jeho jméno a hodnota.
Příklad:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Meter.Meter.class"
- WIDTH = 200
- HEIGHT = 120>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "realVar">
- <PARAM NAME = "range_to" VALUE = 100>
- <PARAM NAME = "time_step" VALUE = 1000>
- </APPLET>
Parametry přístrojů jsou standardní, jejichž význam je
totožný pro všechny přístroje, a parametry specifické pro jednotlivé přístroje.
V HTML stránce nemusí být uvedeny všechny parametry přístroje. Některé parametry není potřeba uvádět.
U takového parametru se v přístroji použije jeho implicitní hodnota.
Standardní parametry přístroje:
- net_name
Jméno komunikačního appletu. T.j. appletu, jehož prostřednictvím přístroj komunikuje s aplikací systému Control Web.
- host_name
IP adresa na níž běží aplikace systému Control Web. Tento parametr je ignorován v případě, že komunikace probíhá prostřednictvím
společného komunikačního appletu.
- module_name
Plná cesta k aplikaci systému Control Web. Tento parametr je ignorován v případě, že komunikace probíhá prostřednictvím
společného komunikačního appletu.
- time_out
Doba v ms, po kterou se applet pokouší navázat spojení s aplikací. Pokud se během ní nepodaří spojení navázat je inicialize appletu ukončena chybou.
- time_step
Časový interval v ms, s jakým se přístroj dotazuje na hodnotu proměnné.
Přístroj zobrazuje hodnotu numerické proměnné a současně umožňuje její nastavení pomocí knoflíku,
rolovací lišty nebo editačního řádku.
Specifické parametry přístroje:
- var_name
Jméno proměnné aplikace systému Control Web, jejíž hodnotu bude přístroj zobrazovat, případně měnit.
- range_from
- range_to
Parametry udávající rozsah přístroje. Je-li hodnota proměnné mimo rozsah přístroje, nastaví se přístroj
na mezní hranici. Implicitní hodnota rozsahu je 0-100.
- init_value
Nastavuje počáteční hodnotu přístroje při jeho inicializaci. Implicitní hodnota se rovná dolní mezi
rozsahu přístroje.
- mode
- content
Má rovněž vliv na grafickou podobu přístroje. Může nabývat hodnot:
- max ... maximum
- min ... minimum
Pro všechny módy znamená nastavení content = max zobrazení komplexní podoby
přístroje. Některé módy umožňují nezobrazovat jednu ze svých částí nastavením parametru
content = min.
- dec_places
Počet zobrazovaných desetinných míst na číslicovém zobrazovači. Implicitní hodnota je 2.
Příklad volání:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Control.Control.class"
- WIDTH = 200 HEIGHT = 200>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "realVar">
- <PARAM NAME = "range_to" VALUE = 200>
- <PARAM NAME = "time_step" VALUE = 1000>
- </APPLET>
Přístroj zobrazuje hodnotu logické proměnné.
Specifické parametry přístroje:
- var_name
Jméno proměnné aplikace systému Control Web.
- init_value
Nastavuje počáteční hodnotu přístroje při jeho inicializaci. Implicitní hodnota je false.
Příklad volání:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Indicator.Indicator.class"
- WIDTH = 44
- HEIGHT = 44>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "boolVar">
- <PARAM NAME = "init_value" VALUE = true>
- </APPLET>
Upozornění:
Přístroj Indicator má pevnou velikost 44 x 44. Proto se doporučuje nastavit na tyto hodnoty parametry
WIDTH a HEIGHT.
Přístroj zobrazuje hodnotu numerické proměnné pomocí ručkového přístroje nebo grafu.
Specifické parametry přístroje:
- var_name
Jméno proměnné aplikace systému Control Web, jejíž hodnotu bude přístroj zobrazovat.
- range_from
- range_to
Parametry udávající rozsah přístroje. Je-li hodnota proměnné mimo rozsah přístroje, nastaví se přístroj
na mezní hranici. Implicitní hodnota rozsahu je 0-100.
- low_limit
- high_limit
Parametry podle kterých se nastaví limity. Je-li hodnota menší než low_limit, použije se barva cyan,
přesáhne-li hodnota high_limit, použije se barva červená. V rozsahu mezi limitami se použije zelená.
- init_value
Nastavuje počáteční hodnotu přístroje při jeho inicializaci. Implicitní hodnota se rovná dolní mezi
rozsahu přístroje.
- meter_mode
Určuje grafickou podobu přístroje uvedením jednoho z názvů módu:
- pointer
Napodobuje ručkový přístroj zobrazující spojitou veličinu.
- vertical_bar, horizontal_bar
Oba módy představují barevnou plochu, která zaplňuje aktuální barvou v poměru hodnoty proměnné
k maximálnímu rozsahu přístoje.
- flow_graph, sweep_graph
Oba módy vykreslují graf historického trendu. Mód flow_graph vykresluje poslední hodnotu vždy na konec grafu,
přičemž se celý graf průběžně posouvá. Mód sweep_graph vykresluje vždy od začátku grafu. Po dosažení konce začne
přepisovat hodnoty opět od začátku, graf se neposouvá.
- digital
Digitální výstup.
- content
Má rovněž vliv na grafickou podobu přístroje. Může nabývat hodnot:
- max ... maximum
- med ... medium
- min ... minimum
Pro všechny módy znamená nastavení content = max zobrazení komplexní podoby
přístroje. Některé módy umožňují nezobrazovat jednu ze svých částí nastavením parametru
content = min nebo content = med.
- dec_places
Počet zobrazovaných desetinných míst na číslicovém zobrazovači. Implicitní hodnota je 2.
- history
Udává počet pamatovaných a zobrazovaných hodnot v grafu.
Příklad volání:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Meter.Meter.class"
- WIDTH = 200
- HEIGHT = 200>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "realVar">
- <PARAM NAME = "range_to" VALUE = 200>
- <PARAM NAME = "time_step" VALUE = 1000>
- </APPLET>
Nastavení logické hodnoty do proměnné typu boolean pomocí tlačítka.
Specifické parametry přístroje:
- var_name
Jméno proměnné aplikace systému Control Web.
- init_value
Nastavuje počáteční hodnotu přístroje při jeho inicializaci. Implicitní hodnota je false
Příklad volání:
-
- <APPLET
-
- CODEBASE = "."
- CODE = "mii.cw.Switch.Switch.class"
- WIDTH = 44
- HEIGHT = 44>
- <PARAM NAME = "net_name" VALUE = "Net">
- <PARAM NAME = "var_name" VALUE = "boolVar">
- <PARAM NAME = "init_value" VALUE = true>
- </APPLET>
Upozornění:
Přístroj Switch má pevnou velikost 44 x 44. Proto se doporučuje nastavit na tyto hodnoty parametry
WIDTH a HEIGHT.