The page has been modified since the last reload. Refresh now?

There are {{ $ctrl.pendingUpdatesCount() }} pending paragraph updates.

TIEP113 Ohjelmointi 2, JSP, 1 op, 2020

JSP = Java Server Pages = tapa tehdä dynaamisia WWW-sovelluksia niin, että kirjoitetaan (X)HTML:ää ja tarvittaessa sekaan Java-koodia.

1. Kurssin suoritus

Suoritus:

  1. Katsotaan itsenäisesti alla olevat videot. Alla esimerkkiaikataulut videoiden katsomiseen.

    • videot W0-W2 katsottavat ennen päätohjausta 1
    • videot W3-W4 katsottava ennen pääteohjausta 2
  1. Tehdään ohjatusti tai itsenäisesti pääteohjaukset:
{}
  1. Muutetaan oma harjoitustyö (osittain) WWW-pohjaiseksi
  1. Luvussa 3 on työkalujen ohjeita

2. Luentojen videot

  • alla luentovideot, niiden ehdotetut katselujat (tiistain ahtautta voi pienentää katsomalla aikaisemminkin :-), sisällöt ja oheismateriaali
  • vinkki: avaa video toiseen selainikkunaan ja tee itse samalla Eclipsellä tai vastaavalla.

W0. ti 2.5.2016 klo 10:15-10:45: Aihe: Aloitusluento

{}

W1. ti 2.5.2017 klo 10:45-12:15: Aihe: TCP/IP, Servlet, JSP

W2. ti 2.5.2017 klo 14:15-16:00: Aihe: Omien komponenttien käyttö JSP-sivuilla

W3. ma 8.05.2017 klo 10:15-12:00: Aihe: Kerho-ohjelma JSP:llä

W4. ti 9.05.2016 klo 14:15-16:00: Aihe: synkronoinnista, Ajax, Vaadin

#

3. JSP ja Eclipse

{}
#

3.1 Perusasennukset

Tämä siis omalla koneella (tämä on jo tehty mikroluokissa, älä yritä uudelleen).

  • Asenna aluksi TomCatin uusin versio (9.x): http://tomcat.apache.org/index.html (muista hakemisto johon asensit TomCatin, ehdotus: C:\devel\apache-tomcat-9.0.19 )
  • Jos et asentanut aikanaan osoitteesta https://www.eclipse.org/downloads/packages/ Eclipsen J2EE versiota (Eclipse IDE for Enterprise Java Developers), niin asenna se viimeistään nyt. Jos olet tehnyt vanhan asennuksen, niin voi riittää Eclipsen configuraatio-hakemiston tyhjentäminenkin, jos kaikki ei toimi ihan kunnolla. Tämä voi olla esim Windowsissa hakemistossa
    • %USERPROFILE%\Local Settings\Application Data\eclipse
{}

3.2 Palvelimen asentaminen työtilaan

  • Käynnistä Eclipse (mikroluokassa Eclipse 19.03, jos N-levy ei toimi, ks pääte 3)
  • Kannattaa tehdä Workspace jota ei ole koskaan käyttänyt vielä
  • Lisää työtilaan palvelin:
    1. File/New/Other/Server/Server
    2. Asetukset:
      • Select the server type: Apache/Tomcat vX.Y Server (mikroluokissa versio 9)
      • Server’s host name: localhost
      • Server name: Tomcat vX.Y Server at localhost
      • Next
    3. Tomcat installation directory: kohdan 3.1 hakemisto (mikroluokissa C:\devel\tomcat-9.0.19)
    4. Next ja Finish
{}

3.3 Servletin tekeminen

  • luo uusi Web-projekti sopivaan hakemistoon (ei toiminut kaikilla mikroluokissa, kokeile, mutta jos ei toimi, niin siirry JSP-osaan)
  1. File/New/Other/Web/Dynamic Web Project
  2. Nimeksi vaikka servlet
  3. Sopiva hakemisto
  4. Target Runtime: Apache Tomcat vX.Y Next
  5. Next Next Finish
  6. Salli uusi perspektiivi, jos Eclipse kysyy
  • luo uusi Servlet:
  1. File/New/Other/Web/Servlet Next
  2. Asetukset:
    • Project: servlet
    • Folder: servlet
    • Java package: servlet
    • Class name: ServletEka
    • Super class: javax.servlet.http.HttpServlet
    • Next
  3. Asetukset:
    • Name: ServletEka
    • Description: Eka servletti meikäläiselle
    • Url mappings /ServletEka
    • Next
  4. Asetukset:
    • Modifiers: Public
    • Interfaces: javax.servlet.Servlet
    • Ruksit:
      • Constructors from superclass
      • Inherited abstract methods
      • doPost
      • doGet
    • Finish
  • Muuta syntynyt koodi haluamaksesi (esim ServletEka.java)
  • Aja servletti:
    • Oikeaa nappia koodin päällä ja Run as/Run on Server
    • Valitse Tomcat X.Y ja ruksi “Always user this server when running this project” ja Next, Finish
  • Ota joku selain (oletuskin käy) ja kirjoita URLiksi:
{}
http://localhost:8080/servlet/ServletEka

(jossa servlet on projektin nimi ja ServletEka servletin nimi)

{}

3.4 JSP-sivun tekeminen

  1. Lisää saman projektin alle uusi JSP-sivu:
  2. File/New/Other/Web/JSP File
  3. Katso, että projektin WebContent on valittuna
    • File name: JspEka.jsp
    • Next
  4. Valitse sopiva merkkaustapa, esim html 5
  5. Finish
  6. Muuta syntynyt koodi haluamaksesi (esim. JspEka.jsp)
  7. Näytä JSP-sivu Run as/Run on server
  8. Nyt tarvittava URL on
{}
http://localhost:8080/servlet/JspEka.jsp
  1. Tutustu myös generoidun .html-tiedoston sisältöön (selaimesta riippuen View Source -välilehti, eli siis HTML-sivun lähdekoodi)
{}

3.5 uiBeans-kirjaston käyttäminen

  • luo uusi Java-projekti uiBeans
  • tee sen alle uiBeans-paketti
  • kopioi paketin alle EditBox.java ja ComboBox.java
  • Lisää projektiin Tomcat:
    • Project/Properties/Java Build path/Libraries/Add Library/Server Runtime/Apache Tomcat
  • Web-projektissasi lisää projekti mukaan:
    • Project/Properties/Java Build Path/Projects/Add
    • ja projektisi nimi (esim. uiBeans)
  • Laita vielä web-projektissa ui-projekti vielä näkymään palvelimelle:
    • Eclipse 4.4: Project/Properties/Deployment Assembly/Add/Project ja valitse ui-projektisi (esim. uiBeans)
  • Muuta jsp sivu käyttämään ko. komponentteja (esim. jspValintaWithBean.jsp)
  • Muista tallentaa JSP-sivusi
  • Tarvittaessa siivoa kaikki: Project/Clean.../Clean all projects
  • Jos uiBeans ei käänny, voi syynä olla se, että Tomcatin .jar puuttuu uiBeans-projektin Java Build Pathista. Sen voi yrittää saada sinne esim. import javax.servlet.http.*; rivillä Ctrl-1:n kautta ja sitten Fix Project Setup…
{}

3.6 Oman papu-luokan lisääminen

Jos haluat lisätä oman papu-luokan, se onnistuu näin:

  • Lisää web-projetiin uusi paketti, esim. jspvaihtaja
  • Luo uusi luokka paketin alle, esim. VaihtajaBean
{}

3.7 Valmiin .jar-kirjaston käyttäminen (esim. Ali.jar)

  • Web-projektissasi Project/Properties/Java Build Path/Libraries/Add External JARs
  • Lisää haluamasi Jar-tiedostot (esim. Ali.jar)
  • Lisää jar näkymään palvelimelle:
    • Eclipse 4.4: Project/Properties/Deployment Assembly/Add/Archives from File System
{}

3.8 Valmiiden omien luokkien lisääminen

  • tee luokkia vastaava uusi projekti: File/New/Java Project ja hae oikea hakemisto

  • anna projektille joku nimi (esim. Valuutat-luokkaa varten demo)

  • Web-projektissasi lisää projekti mukaan: Project/Properties/Java Build Path/Projects/Add ja projektisi nimi (esim. demo)

  • Laita projekti vielä näkymään palvelimelle: - Eclipse 4.4: Project/Properties/Deployment Assembly/Add/Project

  • Jos omien luokkien projekti ei tule millään em. kohtaan näkyviin, voit tehdä omista luokista .jar-tiedoston, joka sitten lisätään palvelimelle em. kohdasta .jar-tiedostona

     File/Export/Java/Jar-file

Jos muutat luokkiesi sisältöä, muista tässä tapauksessa tehdä uusi .jar.

3.9 Oletushakemisto

  • Eclipsen ja Tomcatin oletushakemistona on se hakemisto, josta Eclipse on käynnistetty.
  • tätä varten on hyvä olla itsellään ajojono, jolloin voi ensin siirtyä komentorivillä haluamaansa ja sitten käynnistää Eclipsen tähän hakemistoon.
  • tällä tiedolla on merkitystä, kun avataan tiedostoja ilman hakemiston nimeä.
  • hakemisto voidaan toki muuttaa myös
Run Configurations/Apache Tomcat/Tomcat vX.Y/Arguments/Working Directory/Other
{}
{}
{}

3.10 Tietokanta

Mikäli käytät esim. SQLite tietokantaa, katso mallia kannan alustamisesta esimerkistä:

Kanta.java

ja erityisesti metodista annaKantayhteys().

4. Lukemista

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.