Dynamické webové projekty a aplikace

Existují dva typy webových projektů: dynamické a statické. Dynamické webové projekty obsahují dynamické prostředky Java EE, jako jsou servlety, soubory JSP, filtry a přidružená metadata - kromě statických prostředků, jako jsou obrázky a soubory HTML. Statické webové projekty mohou obsahovat pouze statické prostředky. Když vytváříte webové projekty, můžete zahrnout styly CSS a knihovny značek JSP (pro dynamické webové projekt), abyste mohli začít vývoj s bohatší sadou projektových prostředků.

Dynamické webové projekty jsou vždy vloženy v projektech podnikových aplikací. Průvodce, jenž slouží k vytvoření dynamického webového projektu, také vytvoří projekt EAR (Enterprise Application) v případě, že ještě neexistuje. Průvodce také zaktualizuje deskriptor implementace application.xml určeného projektu podnikové aplikace k definici webového projektu jako prvek modulu. Pokud raději importujete soubor WAR, než vytváříte nový dynamický webový projekt, průvodce importem WAR vyžaduje, abyste uvedli webový projekt, který již vyžaduje projekt EAR.

Konvence Java EE mohou představovat další režii v případě, že chcete vytvořit pouze statickou webovou aplikaci založenou na obsahu, jež neobsahuje žádné dynamické soubory, jako jsou JSP nebo servlety. V tomto případě, když potřebujete pouze nejzákladnější webový projekt, zřejmě budete chtít použít statický typ webového projektu (viz Statické webové projekty). Poznámka: Statické webové projekty lze převést na dynamické výběrem položky Převést na dynamický webový projekt z nabídky Projekt.

Model Java EE - přesněji řečeno specifikace Sun Microsystems Java™ Servlet 2.3 Specification definuje adresářovou strukturu webové aplikace, která určuje umístění souborů s webovým obsahem, soubory tříd, cesty ke třídám, deskriptory implementace a podpůrná metadata. Hierarchie webového projektu odráží hierarchii z něj vytvořené webové aplikace. Na pracovní ploše můžete k vytvoření nového webového projektu použít Průvodce novým webovým projektem.

Hlavní složka projektu obsahuje všechny vývojové objekty související s danou webovou aplikací. Složka Webový obsah obsahuje prvky projektu nezbytné k vytvoření webové aplikace. Tato struktura složek mapuje strukturu souboru WAR (web application archive) definovanou společností Sun Microsystems. Následující výchozí prvky jsou umístěny v hierarchii složky webového projektu:
Poznámka: V pohledu Průzkumník projektů jsou webové projekty filtrovány do uzlů složek za účelem úpravy zobrazení webových prostředků pro snadnou správu během vývoje. Informace o filtrované struktuře viz Pohled Průzkumník projektů.
Deskriptor implementace webu
Standardní deskriptor implementace webové aplikace (soubor web.xml).
JavaSource
Obsahuje zdrojový kód Java daného projektu pro třídy, objekty bean a servlety. Když jsou tyto prostředky přidány do webového projektu, dojde k jejich automatické kompilaci a přidání vygenerovaných souborů do adresáře WEB-INF/classes. Obsah zdrojového adresáře není zabalen do souborů WAR, není-li zadána příslušná volba při vytvoření souboru WAR.
Poznámka: Ačkoli výchozí název tohoto adresáře je JavaSources, lze jej změnit klepnutím pravým tlačítkem myši na něj v průzkumníku projektů a výběrem položek Refaktorovat > Přejmenovat.
Složka imported_classes
Tato složka může být vytvořena při importu souboru WAR - obsahuje soubory tříd, jež nemají doprovodný zdrojový text. Složka imported_classes je složka tříd Java. Složky tříd Java mohou být také vytvořeny pomocí stránek vlastností webového projektu Cesta sestavení Java.
Složka WebContent
Povinné umístění všech webových prostředků včetně HTML, JSP, grafických souborů atd. Pokud soubory nejsou umístěny v tomto adresáři (nebo v některém z podadresářů tohoto adresáře), nebudou k dispozici aplikaci spuštěné na serveru. Složka Webový obsah představuje obsah souboru WAR, jenž bude implementován na daný server. Všechny soubory neumístěné do složky Webový obsah budou považovány za prostředky v době vývoje (například soubory .java, .sql a .mif), a nebudou implementovány při jednotkovém testování či publikaci projektu.
Poznámka: Ačkoli výchozí název této složky je WebContent, lze jej změnit klepnutím pravým tlačítkem myši na něj v průzkumníku projektů a výběrem položek RefaktorovatPřejmenovat nebo z webové stránky s dialogovým oknem Vlastnosti daného projektu. V dynamickém webovém projektu tato změna názvu složky zaktualizuje výstupní adresář sestavení Java.
META-INF
Tento adresář obsahuje soubor MANIFEST.MF, jenž slouží k mapování cest ke třídám pro závislé soubory JAR existující v jiných projektech stejného projektu podnikových aplikací. Položka v tomto souboru zaktualizuje běhovou cestu ke třídám projektu a nastavení pro sestavení Java tak, aby obsahovala odkazované soubory JAR.
theme
Doporučený adresář k ukládání stylů CSS a jiných objektů týkajících se stylů.
WEB-INF
Tento adresář založený na specifikaci Sun Microsystems Java Servlet 2.3 Specification obsahuje podpůrné webové prostředky pro webovou aplikaci včetně souboru web.xml, tříd a adresářů s knihovnami.
/classes
Tento adresář je pro servlety, třídy obslužného programu a výstupní adresář kompilátoru Java. Třídy v tomto adresáři jsou používány zavaděčem tříd aplikace k zavádění tříd. Složky v tomto adresáři namapují názvy balíků a tříd, jako v souboru: /WEB-INF/classes/com/mycorp/servlets/MyServlet.class.

Do tohoto adresáře přímo neumísťujte žádné soubory .class. Soubory .class jsou umístěny do tohoto adresáře automaticky, když kompilátor Java zkompiluje zdrojové soubory Java, jež jsou v adresáři Prostředky Java. Všechny soubory umístěné přímo do tohoto adresáře budou odstraněny kompilátorem Java po jeho spuštění.

/lib
Podpůrné soubory JAR, na něž se odkazuje webová aplikace. Všechny třídy v souborech .jar umístěné do tohoto adresáře budou k dispozici pro danou webovou aplikaci.
Knihovny
Podpůrné soubory JAR, na něž se odkazuje webová aplikace. Tato složka odráží obsah složky lib. Kromě toho jsou v této složce obsaženy projekty webové knihovny, což jsou "virtuální" soubory JAR fyzicky neumístěné do webového projektu, ale přidružené k projektům Java jinde v daném pracovním prostoru. Jsou zabaleny s daným projektem, když exportujete soubor WAR příslušné aplikace.
Poznámka: Položka knihovny na cestě sestavení Java zůstane, pokud ovšem nedojde k odstranění skutečného souboru JAR ze složky WEB-INF/lib. Pokud odeberete položku cesty ke knihovně, ale nikoli soubor JAR, bude položka knihovny znovu automaticky přidána na danou cestu.
Související koncepce
Webové prostředky
Soubory webového archivu (WAR)
Související úlohy
Vytvoření dynamického webového projektu
Vytvoření souborů stránek JavaServer Pages (JSP)