2.1 Huomautus
Tomcatin versioista
2.2.1 Asennus
ja configurointi
Lataa
Java SDK (Java Software Development Kit)
2.2.2 Asetusten
muokkaaminen eli configurointi
1. Otetaan
ROOT web sovellus käyttöön
2.2.3 Testing, testing , one two three
2.2.4 Tomcatin
konfigurointitiedostoista
Edellisessä kappaleessa puhuttiin servlettien ja JSP:n vaatimasta servletti moottorista. Tomcat on eräs niistä.
Tomcat on kehitetty avoimena järjestelmänä, ja sen jakelu tapahtuu Apachen lisenssin alla. Tomcatistä julkaistaan uusia versioita nopeaan tahtiin. Seuraava versio (versio 5) on tätä kirjoitettaessa (tammikuu 2003) jo alpha vaiheessa. Eri Tomcatin versioissa on kiinnitettävä huomiota erityisesti siihen, mitä versiota servleteistä ja JSP:stä se tukee. Tomcat 4.1.12 tukee servlettien spesifikaatiota 2.3 ja JSP spesifikaatiota 1.2.
Tomcat on saatavilla osoitteesta
http://jakarta.apache.org/tomcat/
Jos käytät uudemman spesifikaation piirteitä, joita Tomcat ei tue, ei sovelluksesi todennäköisesti toimi lainkaan.
Tomcat on saatavilla useaan eri alustaan.
Tutoriaalia kirjoitettaessa on asennettu Tomcatin versio 4.1.12. Todennäköisesti ohjeet toimivat myös uudemmille versioille. Asennus on suoritettu ”standalone” serverinä, eli Tomcat-palvelinta ei ole integroitu mihinkään toiseen palvelimeen. Muihin palvelimiin integroinnista löytyy informaatiota Tomcatin dokumentaatiosta.
Tarvitset Java SDK:n[1]. Mikäli olet jo SDK:n asentanut (vähintään versio 1.2), ei uuden asentaminen ole välttämätöntä (suosittelen vähintään versiota 1.3). Tutoriaalia tehtäessä on käytetty SDK versiota 1.4. Lisäksi joissakin esimerkeissä on tarvittu Enterprise Editionia. Tarkemmat tiedot SDK-versioista saat Sunin sivuilta
Valitse mahdollisimman uusi versio (ei kannata valita alpha- tai beta-julkaisua).
Tomcatin asennus Windowsiin on äärimmäisen helppoa asennusohjelman ansiosta. Tomcatin saat ladattua osoitteesta
http://jakarta.apache.org/tomcat/
Oletuksena Tomcatin asetukset eivät ole välttämättä parhaat mahdolliset opiskelukäyttöön. Asetukset saattavat vaihdella suurestikin eri versioiden mukaan.
Tästä edespäin viittaan Tomcatin asennushakemistoon[2] nimellä TOMCAT_HOME.
Mikäli haluat ottaa käyttöön valmiina olevan web sovelluksen nopeata testaamista varten, ota pois kommenteista TOMCAT_HOME\conf\server.xml tiedostosta seuraava rivi
<Context path=""
docBase="ROOT" debug="0"/>
Tällöin saat haluamasi JSP sivut ja servletit näkymään suoraan osoitteessa
http://localhost/sivu.jsp tai http://localhost/servlet/paketin_nimi.servletin_nimi.
Tomcatissä on oletuksena servlet invoker sovellus asetettu pois päältä. Tämän sovelluksen saataville asettaminen (enable) helpottaa servlettien testaamista. Mikäli et muuta tätä asetusta, joudut kuvaamaan erikseen jokaisen servletin tekemiisi web sovelluksiin web.xml tiedostoon[3].
Ota pois kommenteista TOMCAT_HOME\conf\web.xml tiedostosta rivit
<servlet-mapping>
<servlet-name>invoker</servlet-name>
<url-pattern>/servlet/*</url-pattern>
</servlet-mapping>
Tekemäsi muutos vaikuttaa kaikkiin websovelluksiin, koska muutos tehtiin palvelimen asetuksiin.
Mikäli sinulla ei ole muita palvelimia konfiguroituna[4] kuuntelemaan porttia 80, kannattaa se asettaa Tomcat-palvelimen portiksi. Muuta TOMCAT_HOME\conf\server.xml tiedostoa seuraavasti
<Connector
className="org.apache.coyote.tomcat4.CoyoteConnector"
port="80">
Oletuksena Tomcatin portti on 8080, milloinka joutuisit käyttämään syntaksia:
http://palvelin:8080/
Seuraavaksi määritellään, ladataanko sovelluksen osat automaattisesti uudestaan niitä päivitettäessä.
Asetetaan Tomcat tutkimaan, ovatko servletit/JSP sivut muuttuneet niitä viimeksi ajetusta versiosta. Tomcat siis tarkistaa, tarvitseeko komponentti ladata uudestaan. Etsi server.xml tiedostosta seuraavat sanat:
document
roots in places other than the virtual host's appBase directory. -->
ja lisää seuraava rivi suoraan alle
<DefaultContext
reloadable="true"/>
Näin varmistetaan, että kaikkien web sovellusten komponentit ovat aina ajan tasalla. Päivitettyäsi servletin tai JSP sivun uusi versio ladataan ensimmäisen pyynnön tapahtuessa. Tomcatin ikkunassa näet informaatiota servlettien uudelleenlataamisesta.
Mikäli haluat tehdä tämän vain tiettyihin web sovellukseen, aseta vain niiden context-elementtiin[5] reloadable attribuutin arvoksi true.
Mikäli et halua sovellustesi päivittyvän automaattisesti, käytä Tomcatin Manager-ohjelmaa[6] haluamasi web sovelluksen päivittämiseen.
Aseta ympäristömuuttuja JAVA_HOME osoittamaan Java SDK:n asennushakemistoasi, esim. c:\j2sdk1.4.1.
Aseta TOMCAT_HOME (uusimmissa Tomcat-versioissa CATALINA_HOME[7]) Tomcatin asennushakemistoon.
Käynnistä Tomcat ajamalla komentokehoitteesta TOMCAT_HOME\bin\startup.bat[8] komentojonotiedosto. Testaa Tomcatin toiminta menemällä selaimella osoitteeseen
Kannattaa lisäksi suorittaa jokin valmiista JSP ja servletti
esimerkeistä, jotta voit varmistua Tomcatin toimivan oikein.
Tomcatin tärkein konfigurointitiedosto on TOMCAT_HOME\conf\server.xml. Pidä aina varmuuskopiota toimivasta versiosta, sillä jos teet vääriä muutoksia tähän tiedostoon, ei Tomcat toimi.
Toinen tärkeä tiedosto on TOMCAT_HOME\conf\web.xml, jota ei pidä sekoittaa omien web sovellustesi sisältämään web.xml tiedostoon.
Tiedostojen konfiguroinnista saat lisätietoa osoitteesta
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/index.html
[1] Aiemmin käytettiin nimitystä JDK (versiot 1.0, 1.1, 1.2).
[2] Hakemisto, johon Tomcat on asennettu.
[3] Tästä on kerrottu lisää kappaleessa web.xml.
[4] Portti voi olla vain yhden palvelimen käytössä kerrallaan, oletusportti web palvelimissa on 80.
[5] Ks. kappale ServletContext.
[6] Ks. kappale Tomcat Manager.
[7] Tarkista ennen asettamista kumpaa syntaksia käyttämäsi Tomcat ymmärtää. Tämä on tosin helppoa vaihtaa. Mikäli nimi on väärin, ei Tomcat käynnisty.
[8] Vastaavasti tapahtuu Tomcatin sulkeminen shutdown.bat komentojonotiedostolla.
[9] Jos Tomcat jossain muussa portissa kuin 80, käytä syntaksia http://localhost:portti_numero .