Két fajta webprojekt létezik: dinamikus és statikus. A dinamikus webprojektek tartalmazhatnak
dinamikus Java EE erőforrásokat - például szervleteket, JSP fájlokat,
szűrőket és társított metaadatokat - és statikus erőforrásokat is -
például képeket és HTML fájlokat. A statikus webprojektek csak
statikus erőforrásokat tartalmaznak. Webprojektek létrehozásakor
befoglalhat lépcsőzetes stíluslap-dokumentumokat és JSP
címkefüggvénytárakat (dinamikus webprojektek esetén), hogy gazdagabb
projekt erőforrások készletével kezdje a fejlesztést.
A dinamikus webprojektek mindig vállalati alkalmazás projektekbe vannak
beágyazva.
A dinamikus webprojekt létrehozására használt varázsló létrehoz egy
vállalati alkalmazás (EAR) projektet is, ha az még nem létezik. A
varázsló továbbá frissíti a megadott vállalati alkalmazás projekt
application.xml telepítési leíróját, hogy
meghatározza a webprojektet modul elemként. Ha egy új dinamikus
webprojekt létrehozása helyett importál egy WAR fájlt, akkor a WAR
importálása varázsló megköveteli egy webprojekt megadását, ami már EAR
projektet igényel.
A Java EE megállapodások többletterhelést képviselheznek, ha csak egy
statikus, tartalom alapú webalkalmazást kíván létrehozni, ami nem
tartalmaz dinamikus fájlokat, például JSP fájlokat vagy szervleteket. Ebben az
esetben a legalapszintűbb webprojektre van szüksége, ezért érdemes lehet a
statikus webprojekt típus használata
(Statikus webprojektek).
Fontos, hogy a statikus webprojektek később átalakíthatók dinamikus
webprojektekké. Ehhez válassza a Projekt menü Átalakítás dinamikus
webprojektté menüpontját.
A Java EE modell, pontosabban a Sun Microsystems Java™ Servlet
2.3 specifikáció, meghatároz egy webalkalmazás
könyvtárszerkezetet, ami megadja a webtartalom fájlok, osztályfájlok,
osztályútvonalak, telepítési leírók és támogató metaadatok helyét. A webprojekt hierarchia
tükrözi, hogy a webalkalmazás egy projektből kerül létrehozásra. A
munkaterületen az Új webprojekt varázsló segítségével hozhat
létre új webprojektet.
A fő projekt mappa tartalmazza a webalkalmazáshoz kapcsolódó összes
fejlesztési objektumot. A Webtartalom mappa tartalmazza a projektnek a
webalkalmazás létrehozásához szükséges elemeit. Ez a mappaszerkezet
képeződik le a Sun Microsystems által meghatározott webalkalmazás
archívum (WAR) szerkezetre. Az alábbi alapértelmezett elemek találhatók
meg a webprojekt mappahierarchiában:
Megjegyzés:
A Projektböngésző nézetben a webprojektek mappa-csomópontokba vannak szűrve,
hogy személyre szabhassa a webes erőforrások megjelenítését a
fejlesztés közbeni egyszerű kezelhetőség érdekében. A szűrt struktúráról
információkat talál a
Projektböngésző nézetben.
- Webes telepítési leíró
- A szabványos webalkalmazás telepítési leíró (a
web.xml fájl).
- JavaSource
- A projekt Java forráskódját tartalmazza az osztályok, komponensek
és kiszolgáló kisalkalmazások számára. Amikor ezek az erőforrások hozzáadásra kerülnek egy
webprojekthez, akkor a rendszer automatikusan lefordítja őket és ez
előállított fájlokat hozzáadja a WEB-INF/classes könyvtárhoz.
A forráskönyvtár tartalma nem kerül brcsomagolásra a WAR fájlokba,
hacsak nem ad meg egy ilyen beállítást a WAR fájl létrehozásakor.
Megjegyzés:
Bár a mappa alapértelmezett neve JavaSources, a nevet módosíthatja, ha a
Projektböngészőben a névre kattint a jobb egérgombbal, majd kiválasztja az
előugró menü menüpontját.
- imported_classes mappa
- Ez a mappa WAR importálás során hozható létre, és olyan
osztályfájlokat tartalmaz, amelyek nem rendelkeznek kísérő forrással. Az
imported_classes mappa egy Java osztály
mappa; Java osztály mappákat a webprojekt Java
összeépítési útvonal tulajdonság oldalon is létrehozhat.
- WebContent mappa
- Az összes webes erőforrás, például HTML, JSP, grafikus fájlok, stb.
kötelező helye. Ha a fájlokat nem ebbe a könyvtárba (vagy ezen könyvtár
alatti alkönyvtárba) helyezi el, akkor a fájlok nem állnak rendelkezésre
az alkalmazás futtatásakor a kiszolgálón. A Webtartalom mappa képviseli a
WAR fájl tartalmát, ami telepítve lesz a kiszolgálóra. Azokat a fájlokat,
amelyek nem a Webtartalom mappa alatt találhatók, a rendszer fejlesztési
erőforrásoknak tekinti (például .java fájlok, .sql fájlok és .mif fájlok),
és nem telepíti a projekt egységtesztelésekor, illetve közzétételekor.
Megjegyzés:
Bár a mappa alapértelmezett neve WebContent, a
nevet módosíthatja, ha a Projektböngészőben a mappára kattint a jobb
egérgombbal, majd kiválasztja az előugró menü
ÁtdolgozásÁtnevezés
menüpontját, vagy a projekt Tulajdonságok párbeszédablakának weboldalán. Dinamikus
webprojekt esetén a mappanév módosítása a Java összeépítés kimeneti könyvtár
frissítését eredményezi.
- META-INF
- Ez a könyvtár tartalmazza a MANIFEST.MF fájlt,
ami az azonos vállalati alkalmazás projekt egyéb projektjeiben létező
függő JAR fájlok osztályútvonalainak leképezésre használatos. A fájl egy
bejegyzése frissíti a futási projekt osztályútvonalat és a Java összeépítési
beállításokat, hogy tartalmazzák a hivatkozott JAR fájlokat.
- theme
- A javasolt könyvtár a lépcsőzetes stíluslap-dokumentumok és egyéb,
stílussal kapcsolatos objektumok számára.
- WEB-INF
- A Sun Microsystems Java Servlet 2.3 specifikáció,
alapján ez a könyvtár tartalmazza a támogató webes erőforrásokat a
webalkalmazáshoz, ideértve a web.xml fájlt,
valamint az osztályokat és lib könyvtárakat.
- /classes
- Ez a könyvtár szervletek, segédprogramosztályok és a Java
fordító kimenet könyvtár tárolására szolgál. Az alkalmazás osztálybetöltő a
könyvtárban található osztályok segítségével tölti be az osztályokat. A
könyvtárban található mappák a csomag- és osztálynevet képezik le, például
/WEB-INF/classes/com/mycorp/servlets/MyServlet.class.
Ne
helyezzen .class fájlokat közvetlenül ebbe a könyvtárba. A .class fájlok
automatikusan ebbe a könyvtárba kerülnek, amikor a Java fordítóprogram a
Java Resources könyvtárban lévő Java
forrásfájlokat fordítja. A közvetlenül ebbe a könyvtárba helyezett fájlokat a
Java fordító letörli futás közben.
- /lib
- A támogató JAR fájlok, amelyekre a webalkalmazás hivatkozik. A .jar
fájlokban ebben a könyvtárban elhelyezett osztályok mind elérhetőek
lesznek a webalkalmazás számára.
- Függvénytárak
- A támogató JAR fájlok, amelyekre a webalkalmazás hivatkozik. Ez a
mappa a lib mappa tartalmát tükrözi. Ezenkívül webes könyvtár projektek
szerepelnek a mappában, melyek olyan "virtuális" JAR fájlok, amelyek nincsenek
fizikailag a webprojektben, de Java projektekhez tartoznak a munkaterület más részén. Ezeket a projekttel
együtt becsomagolja a rendszer az alkalmazás WAR fájljainak
importálásakor.
Megjegyzés: A Java
összeépítési útvonalon lévő könyvtárbejegyzés ott is marad, kivéve ha a
tényleges JAR fájl törlésre kerül a WEB-INF/lib mappából. Ha eltávolít egy függvénytár útvonalat, de a JAR
fájlt nem, akkor a rendszer automatikusan újra hozzáadja a függvénytár
bejegyzést az útvonalhoz.