El empaquetamiento Java WAR (Web Archive) es quizás el más conocido por todos ya que una de las tareas mas comunes de los desarrollos Java es la creación de sitios web. Vamos a ver a continuación su estructura y cuales son los elementos y carpetas fundamentales que componen . A continuación se muestra un diagrama:
Java WAR a detalle
La estructura como podemos ver es algo mas compleja que la estructura de un Java JAR .Vamos a comentar cada uno de los elementos
Assembly Root: Esta es la carpeta principal de la aplicación dentro de la cual todos los elementos se ubican . Se denomina así porque normalmente cuando el Java WAR es descomprimido es cuando se decide el nombre final de la carpeta por ejemplo Aplicacion1. Como carpeta principal se encarga habitualmente de almacenar ficheros de tipo JSP ,HTML ,CSS y JS.
WEB-INF : Esta carpeta es obligatoria en la aplicación y se encarga de almacenar las carpetas de lib y clases junto con el fichero de descriptor de despliegue conocido por todos como “web.xml”
lib : Esta carpeta se encarga de almacenar todos los ficheros JAR que nuestra aplicación necesita.
classes: Esta carpeta se encarga de almacenar todas las clases que tenga nuestra aplicación.
web.xml : Es el fichero de configuración de la aplicación en donde configuramos variables globales ,servlets filtros etc . Ojo hasta la version 2.5 era un fichero obligatorio y sin el la aplicación no era capaz de arrancar . A partir de la versión 3.0 debido al uso de anotaciones pasa a ser opcional.
META-INF: Carpeta donde se ubican los ficheros de metadatos y que ya comentamos en el post anterior .En esta carpeta pueden ir ubicados ficheros como persistence.xml que se encarga de configurar JPA .
MANIFEST.MF: Ya se comento en el post anterior.
[…] muchas ocasiones desarrollamos aplicaciones que pueden empaquetarse en un WAR y es suficiente. En otras ocasiones tenemos que diseñar una aplicación que contiene varios de […]