22/03/2016
Este artículo proporciona una información sobre cómo agregar las librerías necesarias para desarrollar servicios web RESTful con Jersey en Java, utilizando Apache Tomcat como servidor de aplicaciones y gestionando las dependencias con Maven a través del archivo pom.xml.
Entendiendo el Rol de cada Componente
Apache Tomcat:
Apache Tomcat es un servidor de aplicaciones de código abierto que se utiliza para ejecutar aplicaciones Java Servlet, JavaServer Pages (JSP) y aplicaciones web basadas en Java. En nuestro caso, Tomcat alojará y servirá nuestro servicio web RESTful desarrollado con Jersey.
Jersey:
Jersey es un framework de referencia para implementar servicios web RESTful en Java. Proporciona una implementación completa de la especificación JAX-RS (Java API for RESTful Web Services), facilitando la creación de servicios web que siguen los principios REST.
Maven y pom.xml:
Maven es una herramienta de gestión de proyectos y dependencias para Java. El archivo pom.xml (Project Object Model) es el corazón de un proyecto Maven, donde se declaran todas las dependencias necesarias, plugins, configuración del proyecto, etc. En este contexto, el pom.xml especificará que Jersey y otras librerías necesarias sean descargadas e incluidas en nuestro proyecto.
Configurando el Entorno de Desarrollo
Asumiremos que tienes instalado Java Development Kit (JDK), IntelliJ IDEA (o un IDE similar) y Apache Tomcat. Si no es así, deberás instalarlos antes de comenzar.

Instalación de Apache Tomcat:
Descargue la última versión de Tomcat desde el sitio web oficial de Apache Tomcat. Extraiga el archivo descargado en una ubicación conveniente en su sistema.
Configuración de Tomcat en IntelliJ IDEA:
- Abre IntelliJ IDEA.
- Ve a Configure > Settings/Preferences (Ctrl+Alt+S).
- En la sección Build, Execution, Deployment , selecciona Application Servers .
- Haz clic en el botón "+" para agregar un nuevo servidor.
- Selecciona Tomcat Server .
- Indica la ruta de instalación de Tomcat en el campo Tomcat Home .
Creación de un Proyecto Maven con Jersey:
- En IntelliJ IDEA, selecciona File > New > Project .
- Selecciona Maven como tipo de proyecto.
- Marca la opción Create from archetype .
- Busca el arquetipo
jersey.quickstart.webapp. Si no lo encuentras, haz clic en Add Archetype... e introduce los siguientes datos:- GroupId:
org.glassfish.jersey.archetypes - ArtifactId:
jersey-quickstart-webapp - Version:
(la versión más reciente)
- GroupId:
- Completa los campos GroupId y ArtifactId para tu proyecto.
- Selecciona la ubicación para tu proyecto y haz clic en Finish .
El archivo pom.xml: Añadiendo Dependencias
Una vez creado el proyecto, abre el archivo pom.xml. Aquí es donde declararemos las dependencias para Jersey y otras librerías que puedan ser necesarias. Un pom.xml básico para un proyecto Jersey podría verse así:
<project> <modelVersion>0.0</modelVersion> <groupId>com.example</groupId> <artifactId>my-jersey-app</artifactId> <version>0-SNAPSHOT</version> <packaging>war</packaging> <properties> <jersey.version>0</jersey.version> </properties> <dependencies> <dependency> <groupId>org.glassfish.jersey.core</groupId> <artifactId>jersey-server</artifactId> <version>${jersey.version}</version> </dependency> <dependency> <groupId>org.glassfish.jersey.media</groupId> <artifactId>jersey-media-json-jackson</artifactId> <version>${jersey.version}</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>0</version> <scope>provided</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>12</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>1</version> <configuration> <source>8</source> <target>8</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2</version> </plugin> </plugins> </build></project>Recuerda ajustar las versiones de las dependencias según sea necesario. Este ejemplo incluye:
jersey-server: La librería principal de Jersey para el servidor.jersey-media-json-jackson: Para manejar el formato JSON.javax.servlet-api: La API de servlets de Java (declarada como provided porque Tomcat la proporciona).junit: Para pruebas unitarias.
Construyendo y Ejecutando la Aplicación
- Abre una terminal en IntelliJ IDEA y navega hasta la carpeta del proyecto.
- Ejecuta el comando
mvn clean installpara compilar y construir el proyecto. - Configura una nueva configuración de ejecución en IntelliJ IDEA para tu aplicación Tomcat, especificando el artifact creado.
- Ejecuta la aplicación.
Consultas Habituales y Solución de Problemas
¿Qué hacer si Maven no encuentra el arquetipo jersey.quickstart.webapp?
Asegúrate de que tienes una conexión a internet estable. Si el problema persiste, prueba a añadir el arquetipo manualmente como se describe en la sección de creación del proyecto.
¿Cómo depurar mi servicio web RESTful?
Puedes usar el depurador de IntelliJ IDEA para depurar tu código. Configura los puntos de ruptura y ejecuta la aplicación en modo depuración.
¿Cómo manejar diferentes formatos de datos (JSON, XML)?
Para manejar diferentes formatos de datos, deberás agregar las dependencias correspondientes en tu archivo pom.xml. Por ejemplo, para XML puedes usar jersey-media-jaxb
Tabla Comparativa de Frameworks RESTful en Java
Si bien Jersey es una excelente opción, existen otros frameworks RESTful en Java. Aquí tienes una tabla comparativa:
| Framework | Popularidad | Facilidad de Uso | Características |
|---|---|---|---|
| Jersey | Alta | Media | Implementación de referencia JAX-RS, Flexible, Buena documentación |
| Spring MVC REST | Alta | Alta (si ya se usa Spring) | Integración con el ecosistema Spring, Completo |
| RestEasy | Media | Media | Ligero, implementación JAX-RS |
Recuerda que esta información es una tutorial general. La configuración específica puede variar ligeramente dependiendo de las versiones de software utilizadas y de la complejidad de tu proyecto. Es recomendable consultar la documentación oficial de Jersey y Maven para una información más detallada.
Si quieres conocer otros artículos parecidos a Agregar librerías jersey, java, apache tomcat y configurar pom.xml puedes visitar la categoría Libros y Librerías.
