Det finns två typer av webbprojekt: dynamiska och statiska. Dynamiska webbprojekt kan innehålla dynamiska J2EE-resurser t.ex. servletprogram, JSP-filer, filter och associerade metadata, samt statiska resurser, t.ex. bilder och HTML-filer. Statiska webbprojekt innehåller endast statiska resurser. När du skapar webbprojekt kan du ta med CSS-filer och JSP-märkordsbibliotek (för dynamiska webbprojekt) så att du kan börja utvecklingen med en större uppsättning projektresurser.
Dynamiska webbprojekt är alltid inbäddade i Enterprise-tillämpningsprojekt.
Du kan använda den guide som du använder när du skapar ett dynamiskt webbprojekt också när du skapar ett Enterprise-tillämpnings projekt (EAR) om projektet inte redan finns. Med guiden uppdaterar du också utplaceringsbeskrivningen av application.xml för Enterprise-tillämpningsbeskrivingen så att webbprojektet definieras som ett modulelement. Om du importerar en WAR-fil i stället för att skapa en ny för ett dynamiskt webbprojekt måste du ange ett webbprojekt som redan behöver ett EAR-projekt i WAR-importguiden.
J2EE-namngivningsregler kan betyda extraresurser om du endast vill skapa en statisk, innehållsbaserad webbtillämpning som inte innehåller några dynamiska filer, t.ex. JSP-filer eller servlettillämpningar. Om du verkligen endast behöver ett helt grundläggande webbprojekt kan du i stället använda den statiska webbprojekttypen (se Statiska webbprojekt). Lägg märke till att statiska webbprojekt kan konverteras till dynamiska webbprojekt genom att välja Konvertera till ett dynamiskt webbprojekt på Projekt-menyn.
I J2EE-modellen, och mer specifikt i Sun Microsystems Java Servlet
2.3-specifikationen, definieras en struktur för webbtillämpningskataloger där webbinnehållsfiler, klassfiler, klassökvägar, utplaceringsbeskrivning och tillhörande metadata definieras. Webbprojekthierarkin speglar hierarkin i den webbtillämpning som skapats från ett projekt. I arbetsmiljön kan du använda guiden Nytt webbprojekt när du vill skapa ett nytt webbprojekt.
Huvudmappen för projektet innehåller alla utvecklingsobjekt till en webbtillämpning. Webbinnehållsmappen innehåller de element i projektet som krävs när en webbtillämpning skapas. Den mappstrukturen stämmer med strukturen för webbtillämpningsarkiv (WAR) som definierats av Sun Microsystems. Följande standardelement finns i hierarkin för webbprojektmappar:
Anm: I vyn Projektutforskaren filtreras webbprojekt till mappnoder där visningen av webbresurser anpassas så att de är lättare att hantera under utveckling. Mer information om filterstrukturen finns i
Vyn Projektutforskaren.
- Webbutplaceringsbeskrivning
- Standardutplaceringsbeskrivningen för webbtillämpningar (web.xml-filen).
- JavaSource
- Innehåller projektets Java-klasser för källkod för klasser, bönor och servlettillämpningar. När de här resurserna läggs till i ett webbprojekt kompileras de automatiskt och de genererade filerna läggs till i katalogen WEB-INF/classes.
Innehållet i källkatalogen paketeras inte i WAR-filer så vida inte ett alternativ anges när en WAR-fil skapas.
Anm: Trots att mappens standardnamn är JavaSources kan du ge den ett annat namn genom att klicka på namnet i projektutforskaren och sedan klicka på .
- imported_classe,-mapp
- Den här mappen kan skapas under en WAR-import och den innehåller klassfiler som inte har någon tillhörande källa. Mappen imported_classes är en Java-klassmapp. Java-klassmappar kan också skapas med hjälp av egenskapssidan Java-byggsökväg för webbprojekt.
- WebContent-mapp
- Den obligatoriska placeringen av alla webbresurser, inklusive HTML, JSP, grafikfiler osv. Om filerna inte placeras i denna katalog (eller i en underkatalog under denna katalog) blir filerna inte tillgängliga när tillämpningen körs på en server.
Webbinnehållsmappen representerar det innehåll i WAR-filen som ska placeras ut på servern. Alla filer som inte ligger i webbinnehållsmappen betraktas som utvecklingstidsresurser (t.ex. .java-filer, .sql-filer och .mif-filer) och placeras inte ut när projektet enhetstestas eller publiceras.
Anm: Trots att mappens standardnamn är WebContent kan du ge den ett annat namn i projektutforskaren genom att högerklicka på mappen och välja OmfaktoriseraÄndra namn eller genom att använda webbsidan i dialogrutan Egenskaper för projektet. Om du ändrar mappnamnet i ett dynamiskt projekt uppdateras Java-byggutdatakatalogen.
- META-INF
- Den här katalogen innehåller filen MANIFEST.MF som används när klassökvägar avbildas för att erhålla beroende JAR-filer som finns i andra projekt i samma Enterprise-tillämpningsprojekt. En post i den här filen kommer att uppdatera klassökvägen för runtime-projektet och Java-bygginställningarna så att de innehåller de JAR-filer som det finns referenser till.
- theme
- Den förslagna katalogen för CSS-filer och andra formatrelaterade objekt.
- WEB-INF
- Den här katalogen som är baserad på specifikationen för Sun Microsystems Java Servlet 2.3 innehåller extra webbresurser för en webbtillämpning, inklusive filen web.xml och klasserna och bibliotekskatalogerna till den.
- /classes
- Den här katalogen är till för servlettillämpningar, vertygsklasser och utdatakatalogen för Java-kompileraren. Klasserna i den här katalogen används i tillämpningens klassinläsare när klasserna läses in. Mappar i den här katalogen avbildas mot paket- och klassnamn, t.ex.: /WEB-INF/classes/com/mycorp/servlets/MyServlet.class.
Lägg inte några .class-filer direkt i den här katalogen. .class-filer placeras i den här katalogen automatiskt när Java-kompileraren kompilerar Java-källfiler som finns i katalogen Java-resurser.
Alla filer som placeras direkt i den här katalogen tas bort av Java-kompileraren när den körs.
- /lib
- De JAR-filer som det finns referenser till i webbtillämpningen. Alla klasser i .jar-filer som placeras i den här katalogen är tillgängliga för webbtillämpningen
- Bibliotek
- De JAR-filer som det finns referenser till i webbtillämpningen. I den här mappen speglas innehållet i lib-mappen. Därtill inkluderas den här mappen i webbiblioteksprojekt som är virtuella JAR-filer som inte finns fysiskt i webbprojektet men som är associerade med Java-projekt på andra platser på arbetsytan. De är paketerade med projektet när du exporterar tillämpningens WAR-fil.
Anm: En bibliotekspost i Java-byggsökvägen stannar där om inte den aktuella JAR-filen raderas i mappen WEB-INF/lib. Om du tar bort en post i en bibliotekssökväg men inte JAR-filen kommer den biblioteksposten att automatiskt läggas till i sökvägen på nytt.