Írta: tom1964h

A Tomcat elérhetősége és könyvtárai

Fejlesztés lokálisan

A Tomcat-szervert parancssorból tudjuk elindítani. Javasolt fejlesztésnél két parancssori (CLI) ablakot nyitva tartani, ahol a cursor az alábbi könytárakban áll:

C:\Program Files\Java\jdk1.8.0_111\bin
   illetve
C:\Users\user\apache-tomcat-10.0.6\webapps\...\WEB-INF\src

Az elsőt a Tomcat el- és újraindításához (startup.bat paranccsal), a másodikat a forráskódok szerkesztéséhez használjuk. A Tomcat tehát a C:\Program Files\Java\jdk1.8.0_111\bin\startup.bat paranccsal indítható el. A futó server elérhető böngészőből, ehhez a localhost-ot (azaz a 127.0.0.1 IP-cimet, azaz a saját gépünket) keressük, azon belül a beállított portot kell beírni a böngésző címsorába:

        http://localhost:8080

Start!

Feladat: indítsuk el a Tomcat-szervert és …

  • nyissunk egy CLI-t (parancssor ablakot)
  • váltsunk könyvtárat: cd C:\Users\user\apache-tomcat-10.0.6\bin
  • indítsuk el a startup.bat paranccsal
  • nyissunk egy böngészőt és keressük fel a localhost-on a futó szervert

  • lépjünk be az indító screen-en a MANAGER APP szolgáltatásba a frissen beállított jelszavunkkkal (tipp: “manager” és “root”)
  • a Tomcat Web Application Manager megmutatja, milyen webalkalmazások érhetőek el a szerveren; ha mi csinálunk egy teszt-alkalmazást, az is látható lesz itt a listában

Könyvtár-szerkezet

$CATALINA_HOME
	\webapps
		\...
		\...
		\webalkalmazásunk
			\WEB-INF        //ezt nem érheti el a távoli felhasználó
				\classes		<- ide kerül a lefordított kód
				\lib			<- ide kerülnek a külső függőségek
				\src			<- itt írjuk a forráskódot
				web.xml
			\META-INF       //ezt nem érheti el a távoli felhasználó
				context.xml
			*.html állományok		//ez elérhető "kintről"
			\css					//ez elérhető "kintről"
			\images					//ez elérhető "kintről"
			\scipts					//ez elérhető "kintről"

Tehát:

  • a webapps könyvtáron belül sorakoznak webalkalmazásaink
  • egy-egy webalkalmazás könyvtárának “gyökerében” található állományokat (.HTML, .CSS, .JPEG, stb.) a böngészőkliensek elérhetik
  • a listings paraméter false-ra állításával ennek a könyvtárnak a listázhatóságát tilthatjuk le
  • a META-INF és a WEB-INF könytárak nem láthatóak a kliens oldaláról

A Java fejlesztésünket a WEB-INF könyvtárban tároljuk, amelyen belül egy Java package file-szerkezetét valósítjuk meg:

  • a \src könyvtárban a forrásállományok, osztályok találhatók a package nevének megfelelő alkönyvtárban (.JAVA)
  • a \lib könyvtárba a függőségek kerülnek
  • a \classes könyvtár megfelelő alkönyvtárába fordítja bele a javac fordító a bytekódot (.CLASS)
  • a WEB-INF gyökerében található a web.xml állomány, azaz a Deployment Descriptor (DD), amely XML tag-ekkel leírja, hogyan tudja elérni a kliens a lefordított alkalmazásunkat (servlet-et)
  • ez az egyik mód, az “XML-mód”, a másik mód annotációkkal operál

A Deployment Descriptor létrehozása

A web.xml (Deployment Descriptor) a webalkalmazásunk fontos eleme, magunknak kell létrehozni:

nyissunk egy rendszergazdai PowerShell-t
Windows-gomb / jobb egérgomb / Windows PowerShell (rendszergazdaként)
váltsunk könyvtárat a webalkalmazásunk könyvtárába és hozzuk létre a web.xml-tag:
touch web.xml

Ez egy üres állomány még, a tartalmát később rakjuk össze.

Angol nyelvű áttekintéshez: az NTU egyetem programming notes portálja által leírt tematikát követjük, lásd How to Install Apache Tomcat 9!