Hola mundo usando un Servicio Web REST

1. Descargar e instalar Eclipse
2. Descargar e instalar Apache Tomcat 8.0
3. Descargar e instalar JDK 8
4. Descargar jaxrs-ri-2.14
5. Usando Eclipse crear una aplicación web dinámica

201608301541_1

201608301541_2
6. En la carpeta lib copiar todos los archivos *.jar del archivo comprimido jaxrs-ri-2.14

201608301541_3
7. Crear el paquete com.ws

201608301541_4
8. Crear la clase RESTfulWebService
9. Copiar el siguiente código:

package com.ws;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;

@Path("getMessage/{type}")
public class RESTfulWebService
{
 @GET
 @Produces({"text/plain", "text/html","text/xml", "application/json"})
 public String mostrarMensaje(@PathParam("type") String tipo)
 {
 if(tipo.equalsIgnoreCase("texto"))
 {
 return "Hola mundo";
 }
 else if (tipo.equalsIgnoreCase("html"))
 {
 return "<html lang='es'><head><meta charset='UTF-8'/><title>WS</title></head><body><h1>Hola mundo</h1></body></html>";
 }
 else if(tipo.equalsIgnoreCase("xml"))
 {
 return "<?xml version='1.0' encoding='UTF-8'?><root><value>Hola mundo</value></root>";
 }
 else if(tipo.equalsIgnoreCase("json"))
 {
 return "{\"root\":{\"value\":\"Hola mundo\"}}";
 }
 else
 {
 return "Tipo de dato desconocido";
 }
 }
}

10. La anotación @Path especifica la ruta y el tipo que se debe usar para invocar el método
11. La anotación @GET responde a peticiones GET
12. La cadena “text/plain” permite retornar un tipo texto plano, “text/html” retorna un tipo HTML y así sucesivamente
13. La anotación @PathParam recibe como parámetro el valor de type de la URL
14. Configurar el servicio en el archivo web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://xmlns.jcp.org/xml/ns/javaee"
 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
 id="WebApp_ID" version="3.1">
 <display-name>RESTWS</display-name>
 <servlet>
 <servlet-name>RESTful</servlet-name>
 <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
 <init-param>
 <param-name>jersey.config.server.provider.packages</param-name>
 <param-value>com.ws</param-value>
 </init-param>
 <load-on-startup>1</load-on-startup>
 </servlet>
 <servlet-mapping>
 <servlet-name>RESTful</servlet-name>
 <url-pattern>/*</url-pattern>
 </servlet-mapping>
 <welcome-file-list>
 <welcome-file>index.html</welcome-file>
 <welcome-file>index.htm</welcome-file>
 <welcome-file>index.jsp</welcome-file>
 <welcome-file>default.html</welcome-file>
 <welcome-file>default.htm</welcome-file>
 <welcome-file>default.jsp</welcome-file>
 </welcome-file-list>
</web-app>

15. Invocar al servicio web usando la siguiente URL
http://localhost:8080/RESTWS/getMessage/xml/
16. El resultado sería el siguiente:

201608301541_5

Etiquetas:

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: