Java applety systému Control Web

Co je applet

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é.

Jak vložit applet do HTML stránky

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.
  • Jak vytvořit HTML stránku komunikující s aplikací systému Control Web

    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").

    Podmínky pro vytváření HTML stránky zpřístupňující aplikaci běžící v systému Control Web:

    Postup při vytváření HTML stránky zpřístupňující aplikaci běžící v systému Control Web:

    1. 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">
    2. <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.


    3. 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

    Nastavení Microsoft Internet Exploreru verze 4.0 a 5.0

    1. v hlavním menu prohlížeče otevřít podmenu "Nástroje"
    2. vybrat položku "Možnosti sítě Internet"
    3. v dialogu "Možnosti sítě Internet" zvolit záložku "Zabezpečení"
    4. nastavit parametr "Zóna" na "Zóna sítě Internet"
    5. nastavit parametr "Úroveň zabezpečení zóny" na "Vlastní"

      DataView

    6. tlačítkem "Nastavení" otevřít dialogové okno "Nastavení zabezpečení"
    7. ve stromu parametrů vybrat větev "Java" a nastavit parametr "Povolení pro jazyk Java" na hodnotu "Vlastní"

      DataView

    8. tlačítkem "Uživatelské nastavení pro jazyk Java" otevřít dialogové okno pro změnu oprávnění
    9. vybrat záložku "Upravit oprávnění"
    10. 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".

      DataView

    Applety přístrojů

    Parametry přístroje

    Č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 "Control"

    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
        Určuje grafickou podobu přístroje uvedením jednoho z názvů módu:
      • knob ... knoflík

        DataView DataView

      • vertical_slider, horizontal_slider ... rolovací lišty

        DataView DataView DataView DataView

      • edit_box ... editační řádek

        DataView

    • 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 "Indicator"

    Přístroj zobrazuje hodnotu logické proměnné.

    DataView DataView

    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 "Meter"

    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.
        DataView
      • 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.
        DataView DataView
      • 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á.
        DataView DataView
      • digital
        Digitální výstup.
        DataView
    • 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>

    Přístroj "Switch"

    Nastavení logické hodnoty do proměnné typu boolean pomocí tlačítka.

    DataView DataView

    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.