Académique Documents
Professionnel Documents
Culture Documents
Ubaldo Acosta
www.globalmentoring.com.mx
•El objetivo del ejercicio es modificar el cliente Jax-RS para poder acceder correctamente al Web Service
de listadoPersonas proporcionando las credenciales respectivas (usuario y password) al sistema SGA.
Esta figura es el resultado es similar al siguiente:
www.globalmentoring.com.mx
Este es el Diagrama de Clases del Ejercicio, donde se pueden observar la Arquitectura de nuestro Sistema:
Cliente
REST Web http
Service
www.globalmentoring.com.mx
En caso que no tengamos abierto el proyecto ClienteSgaRestWs
lo abrimos:
www.globalmentoring.com.mx
En caso que no tengamos abierto el proyecto ClienteSgaRestWs
lo abrimos:
www.globalmentoring.com.mx
Copiamos el proyecto para ponerlo en la nueva ruta:
www.globalmentoring.com.mx
Copiamos el proyecto para ponerlo en la nueva ruta:
www.globalmentoring.com.mx
Cerramos el proyecto anterior y dejamos solo el nuevo:
www.globalmentoring.com.mx
Agregamos la clase PruebaRestWS.java:
www.globalmentoring.com.mx
Agregamos la clase PruebaRestWS.java:
www.globalmentoring.com.mx
Archivo PruebaRestWS.java: Dar click para ir al código
package test;
import domain.Persona;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import org.glassfish.jersey.client.ClientConfig;
import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature;
www.globalmentoring.com.mx
Ejecutamos la clase PruebaRestWS.java:
www.globalmentoring.com.mx
Archivo TestPersonaServiceRS.java: Dar click para ir al código
package test;
import java.util.List;
import domain.Persona;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Entity;
import javax.ws.rs.client.Invocation;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.GenericType;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import org.glassfish.jersey.client.ClientConfig;
import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature;
www.globalmentoring.com.mx
Archivo TestPersonaServiceRS.java: Dar click para ir al código
public static void main(String[] args) {
cliente = ClientBuilder.newClient(clientConfig);
//Leer todas las personas (metodo get con readEntity de tipo List<>)
personas = webTarget.request(MediaType.APPLICATION_XML).get(Response.class).readEntity(new
GenericType<List<Persona>>() {
});
System.out.println("\nPersonas recuperadas:");
imprimirPersonas(personas);
www.globalmentoring.com.mx
Archivo TestPersonaServiceRS.java: Dar click para ir al código
//Agregar una persona (metodo post)
Persona nuevaPersona = new Persona();
nuevaPersona.setNombre("Carlos");
nuevaPersona.setApellidoPaterno("Miranda");
nuevaPersona.setApellidoPaterno("Ramirez");
nuevaPersona.setEmail("cmiranda@mail.com");
invocationBuilder = webTarget.request(MediaType.APPLICATION_XML);
response = invocationBuilder.post(Entity.entity(nuevaPersona, MediaType.APPLICATION_XML));
System.out.println("");
System.out.println("Estatus respuesta agregar:" + response.getStatus());
//Recuperamos a la persona recien agregada para despues modificarla y al final eliminarla
Persona personaRecuperada = response.readEntity(Persona.class);
System.out.println("Persona agregada: " + personaRecuperada);
System.out.println("");
System.out.println("Estatus respuesta modificar:" + response.getStatus());
System.out.println("Persona modificada: " + response.readEntity(Persona.class));
www.globalmentoring.com.mx
Archivo TestPersonaServiceRS.java: Dar click para ir al código
//Eliminar una persona
// persona recuperada anteriormente
Persona personaEliminar = personaRecuperada;
String pathEliminarId = "/" + personaEliminar.getIdPersona();
invocationBuilder = webTarget.path(pathEliminarId).request(MediaType.APPLICATION_XML);
response = invocationBuilder.delete();
System.out.println("");
System.out.println("Estatus respuesta eliminar: " + response.getStatus());
System.out.println("Persona Eliminada: ");
}
www.globalmentoring.com.mx
Ejecutamos la clase TestPersonaServiceRS.java. Nota: La aplicación
SgaJeeWeb y el servidor Glassfish ya deben estar iniciados para que la
prueba funcione: :
www.globalmentoring.com.mx
Ejecutamos la clase TestPersonaServiceRS.java:
www.globalmentoring.com.mx
Con este ejercicio hemos modificado el cliente REST Web Service para
poder acceder al Servicio Web de Personas del proyecto SgaJeeWeb.
www.globalmentoring.com.mx
Por: Ing. Ubaldo Acosta
www.globalmentoring.com.mx