![]() |
Muuta huomioitavaa |
Tässä luvussa käsittelemme erilaisia appletteihin liittyviä yleisiä asioita, kuten parametrien käyttöä kutsun yhteydessä sekä applettien pakkaamista.
Yleistä Applettien toteutuksesta ja kutsumisesta
Appleteista kannattaa kirjoittaa mahdollisimman yleispäteviä eli parametreilla ohjattavia. Jos esimerkiksi ohjelmoit appletin, joka rullaa jotain tekstiä, pyörittää animaatiota ja/tai soittaa musiikkia, niin appletista kannattaa tehdä sellainen, että se saa tarvitsemansa tiedot parametreina kutsun yhteydessä. Tällöin esimerkiksi sama appletti pystyy soittamaan kaikki tarvittavat äänitiedostot, eikä jokaiselle äänelle tarvitse kääntää omaa applettiaan.
Appletti kanntattaa myös tehdä sellaiseksi, että se ei ole kovin tarkka sijainnistaan.
Tähän asti olemme liittäneet appletit HTML-koodiin minimiasetuksilla (appletin nimi, leveys ja korkeus), mutta <APPLET>-tagissa voidaan määritellä kutsun yhteydessä paljon muitakin applettiin liittyviä asioita. Seuraavassa on lueteltu kaikki mahdolliset <APPLET> -tagin määreet:
| CODEBASE | Appletin sijainti (URL-osoite). Mikäli appletti sijaitsee samassa hakemistossa HTML-dokumentin kanssa, ei tätä tarvita |
| CODE | Appletin nimi (pakollinen) |
| ALT | Tämä teksti tulostetaan, jos applettia ei pystytä ajamaan |
| NAME | Appletin nimi (ei ole pakollinen) |
| WIDTH | Appletille varattavan alueen leveys (pakollinen) |
| HEIGHT | Appletille varattavan alueen korkeus (pakollinen) |
| ALIGN | Tasaus: left, right, top, middle, absmiddle, baseline, bottom ja absbottom. |
| VSPACE | Appletin ylä- ja alapuolelle jätettävä tyhjä tila |
| HSPACE | Appletin sivulle jätettävä tyhjä tila |
Parametrien välitys appleteille:
HTML-kieli mahdollistaa myös ns. ohjelmanparametrien välittämisen Appletille käynnistyksen yhteydessä.
Tämä toteutetaan seuraavsti:
| <APPLET>code="appletin
nimi" WITH=leveys HEIGHT=korkeus <PARAM> name="eka" value="10"> <PARAM> name="joku" value="jotain"> ...... <PARAM> name="jossain" value="100"> </APPLET> |
Seuraava esimerkki havainnollistaa parametrien käyttöä:



JAR - tiedostojen käyttö (pakkaaminen):
JAR (Java Archive) on tuttuun ZIP-pakkausmenetelmään perustuva menetelmä koota esimerkiksi kaikki tiettyyn Java-applettiin liittyvät tiedostot kuten esim. kuvat ja äänet yhdeksi pakatuksi tiedostoksi.
Tällöin verkon yli siirrettävä tietomäärä pienenee ja ladattavia tiedostoja on vain yksi. Lisäksi hallinta kenties helpottuu, koska tietty kokonaisuus saadaan paketoitua yhdeksi tiedostoksi.
Lisäksi JAR-tiedostot mahdollistavat digitaalisen allekirjoituksen liittämisen JAVA-applettien mukaan.
Mikäli Java-appletti oheistiedostoineen sijaitsee JAR-tiedostossa, on HTML-dokumenttiin sijoitettava appletin latauspyyntö seuraavan kaltainen:
| <APPLET
code="joku.class" archive="juttu.jar" width=300 height=400> ..... </APPLET> |
JAR -tiedostot voidaan rakentaa JDK-paketin JAR-ohjelmalla, jonka kutsun syntaksi on seuraava:
| jar [optiot] [manifesti-tiedosto] kohde lähde [lähteet] |
Optiot:
| c | Luo uuden tiedoston |
| t | Listaa JAR-tiedoston sisällön |
| x | tiedosto Purkaa kaikki tai mainitun tiedoston |
| f | Tekee JAR-tiedoston |
| m | Luo manifesti-tiedoston |
| v | Tulostaa tiedostot, jotka pakettiin otetaan |
Manifest-tiedostosta käy ilmi, mitkä tiedostot ovat kuuluneet alkuperäiseen pakettiin. Jos pakattavia tiedostoja on useita, ne erotellaan välilyönnillä.
Seuraavassa pieni esimerkki JAR-tiedoston käytöstä:

Eli normaali tapa kutsua JAR-ohjelmaa on esimerkiksi:
| jar cf kaikki.jar *.class |
Tässä esimerkiksi kaikik hakemiston .class -tiedostot pakataan yhdeksi JAR-tiedostoksi nimellä kaikki.jar .
Nyt vain muutamme esimerkkimme HTML-dokumentin muotoon:

Eli minkä tahansa Java-appletin oheistiedostoineen voi laittaa jakeluun JAR-pakettina, jolloin sen latausaika lyhenee ja lisäksi kaikki kama saadaan yhteen tiedostoon.
Harjoituksia:
| 1. | Toteuta parametriohjattu yleinen muusikkia soittava appletti siten, että soitettava musiikkitiedosto välitetään appletille kutsun yhteydessä parametrina. Tällöin appletista saadaan yleiskäyttöinen. |
| 2. | Toteuta myös vastaavalla tavalla parametriohjattu animaatio-appletti, jolle animoitava kuva välitetään kutsun yhteydessä parametrina. |
| 3. | Tee jostain aikaisemmin tekemästäsi Java-appletista oheistiedostoineen JAR-paketti ja kokeile sen toimintaa. |