Taller 1: Desarrollo y despliegue de una aplicación Java simple
¿Qué vas a aprender en este taller?
- A instalar un servidor de aplicaciones Tomcat y configurarlo de forma correcta.
- A instalar la herramienta maven.
- A generar un proyecto maven, configurarlo y crear una aplicación java simple.
- A generar un fichero war al compilar la aplicación.
- A desplegar la aplicación en Tomcat.
¿Qué tienes que hacer?
Realiza los siguientes pasos para realizar este taller:
- Instala tomcat10 como hemos visto en la documentación. Configura el panel de administración
Tomcat-Manager
y configúralo para su acceso. - Instala la aplicación
maven
que nos va a ayudar a compilar aplicaciones java. - A continuación vamos a generar un proyecto, que será el esqueleto de nuestra aplicación Java, para ello ejecuta:
mvn archetype:generate -DgroupId=com.example -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false
La estructura de directorio que hemos creado será:
my-webapp
├── src
│ └── main
│ ├── resources
│ └── webapp
│ ├── WEB-INF
│ │ └── web.xml
│ └── index.jsp
└── pom.xml
POM es la unidad fundamental de trabajo en Maven. Es un archivo XML que contiene información sobre el proyecto y los detalles de configuración utilizados por Maven para construir el proyecto.
A continuación configuramos la aplicación, modificando el fichero pom.xml
con el siguiente contenido:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<artifactId>my-webapp</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-webapp Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.1</version>
</plugin>
</plugins>
</build>
</project>
A continuación vamos a construir la aplicación, para ello crea el directorio src/main/java/com/example/
y dentro crea el fichero HelloServlet.java
con el siguiente contenido:
package com.example;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(name = "HelloServlet", urlPatterns = {"/hello"})
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
response.getWriter().println("<h1>Hola, Mundo!</h1>");
}
}
Finalmente construimos la aplicación con el comando:
mvn clean package
El resultado del paso anterior es una aplicación distribuida con extensión .war
llamada my-webapp.war
almacenada en la carpeta target
. Esa aplicación .war
se desplegará posteriormente en el servicio Tomcat.
Despliega la aplicación utilizando la aplicación de administración Tomcat-Manager
. También se puede hacer un despliegue manual, ¿qué tendrías que hacer para realizar este tipo de despliegue?
Finalmente accede a la aplicación desde un navegador web de tu máquina cliente.
¿Qué tienes que entregar?
- Entrega una captura de la aplicación de administración
Tomcat-Manager
una vez que la aplicación está desplegada, donde se comprueba que la aplicación está desplegada. - Entrega una captura de pantalla accediendo a la aplicación web.