1. Filstruktur
På sidan
roller pratades det en del om olika filer som applikationsmontören samlar ihop. På denna sida förklaras bl. a. var applikationsmontören placerar dessa filer i applikationens filträd.
2. Webbmodulen
Den minsta tänkbara J2EE-applikationen består endast av en webbmodul, vilken skapas av webbkomponentutvecklaren. Webbmodulen innehåller JSP-filer, servlets, JavaBeans, HTML, bilder, Javascript, CSS o.s.v..
, för att denna Nedanstående tabell visar hur de olika filerna placeras i applikationen programmera, X representerar sökvägen CATALINA_HOME/webapps/programmera/:
Sökväg | | Beskrivning |
X/ | | JSP, HTML, bilder, javascript, CSS, underkataloger, .. |
X/WEB-INF/web.xml | | Deployment descriptorn för webbmodulen. |
X/WEB-INF/ollesTaglib.tld | | Märkesbibliotek placeras också under WEB-INF. |
X/WEB-INF/classes/ | | Kompilerad javaklasser, d.v.s. bönor och servlets. |
X/WEB-INF/classes/nu/programmera/MyClass.class | | Ett exempel på en böna. Det är standard att man använder företagets domännamn som paketnamn. |
X/WEB-INF/lib/ | | Här kan biblioteksmoduler placeras. |
X/WEB-INF/lib/olles_lib.jar | | Ett exempel på en biblioteksmodul. |
Om filerna placeras på detta sätt har vi en perfekt fungerande webbplats. Ibland vill man skicka sin webbmodul till en applikationsmontör, och då ska man packa ihop filerna till en WAR-fil. WAR-filen är egentligen en vanlig JAR-fil, men eftersom den används lite speciellt har den fått ändelsen .war. När du vill packa webbmodulen till filen programmera-web.war ställer du dig i CATALINA_HOME/webapps/programmera/ och skriver:
[olle@dev1]$ jar cvf programmera-web.war . |
3. Applikationen
Antag att du är applikationsmontör och får in en WAR-fil (programmera-web.war) och en EJB-JAR-fil (programmera-ejb.jar) från dina komponentutveckare. Du bygger nu ett filträd som innehåller följande tre filer, där X står för CATALINA_HOME/webapps/programmera/:
Sökväg | | Beskrivning |
X/application/build/programmera-web.war | | Webbmodulen. |
X/application/build/programmera-ejb.jar | | EJB-komponenten. |
X/application/build/META-INF/application.xml | | Deployment descriptorn för applikationen. |
I detta fall kommer filen applicaton.xml ha följande utseende:
<?xml version="1.0"?>
<!DOCTYPE application PUBLIC
"-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN"
"http://java.sun.com/j2ee/dtds/application_1_2.dtd">
<application>
<display-name>Application used for testing</display-name>
<module>
<ejb>programmera-ejb.jar</ejb>
</module>
<module>
<web>
<web-uri>programmera-web.war</web-uri>
<context-root>/programmera</context-root>
</web>
</module>
</application> |
Filen application.xmls uppgift är att sammaföra de olika komponenterna till en applikation. Vi ser i filen att varje komponent motsvaras av en module-element. Du kan nu packa ihop allt till filen programmera.ear genom att gå in i katalogen CATALINA_HOME/webapps/programmera/application/build/ och skriva:
[olle@dev1]$ jar cvf programmera.ear . |
programmera.ear innehåller nu hela applikationen och kan lätt installeras på vilken J2EE-server som helst.