Saltar la navegación

Práctica WS SOAP: Login Persona

practica1

En esta práctica realizaremos el login de una persona a través de Servicio Web utilizando SOAP. Como lo muestra la figura, lo que se pretende es hacer dos aplicaciones:

  1. Proveedor del Servicio.- Aplicación Web que expone el servicio validarPersona.
    1. Esta aplicación será desarrollada como DynamicWebProyect y expondrá los servicios a través de SOAP. 
    2. El nombre de esta aplicación será: ProveedorWebSoap
  2. Consumidor del Servicio.- Aplicación (de escritorio) que consume el servicio Web validarPersona expuesto por el Servidor.
    1. Esta aplicación será desarrollada como Proyecto Java (escritorio)
    2. El nombre de esta aplicación será: ConsumidorWebSoap

Diagrama Clases Practica 1 SOAP

Persona.java (Proveedor)

package ec.edu.epn.modelo;

import java.io.Serializable;

public class Persona implements Serializable {

	private static final long serialVersionUID = 1L;

	private String nombre;
	private String apellido;
	private String username;
	private String pass;
	private String mensaje;
	private Boolean status;

	// CONSTRUCTOR VACIO

	public Persona() {
	}
	//GETTERS AND SEETTERS

	public String getNombre() {
		return nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getApellido() {
		return apellido;
	}

	public void setApellido(String apellido) {
		this.apellido = apellido;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPass() {
		return pass;
	}

	public void setPass(String pass) {
		this.pass = pass;
	}

	public String getMensaje() {
		return mensaje;
	}

	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}

	public Boolean getStatus() {
		return status;
	}

	public void setStatus(Boolean status) {
		this.status = status;
	}

	public static long getSerialversionuid() {
		return serialVersionUID;
	}
	



IPersona (Proveedor)

Interfaz en el paquete ec.edu.epn.ws.service

package ec.edu.epn.ws.service;

import ec.edu.epn.modelo.Persona;

public interface IPersona {
	Persona validarPersona(Persona p);
	String saludo (String nombre);
}

ImplValidacion.java (Proveedor)

package ec.edu.epn.ws.service;

import ec.edu.epn.modelo.Persona;

public class ImplValidacion implements IPersona {
	public ImplValidacion() {}

	@Override
	public Persona validarPersona(Persona p) {
		Persona persona = new Persona();
		if(p.getUsername().equals("ana") && p.getPass().equals("anita")) {
			persona.setNombre("Ana");
			persona.setApellido("Valdiviezo");
			persona.setMensaje("Usuario enconatrado");
			persona.setStatus(true);
		}else {
			persona.setMensaje("Usuario no encontrado");
			persona.setStatus(false);
		}
		return persona;
	}

	@Override
	public String saludo(String nombre) {
		return "Hola " + nombre;
	}

}

Principal.java (Consumidor)

package ec.edu.epn.cliente;

import java.rmi.RemoteException;

import ec.edu.epn.modelo.Persona;
import ec.edu.epn.ws.service.ImplValidacion;
import ec.edu.epn.ws.service.ImplValidacionProxy;

public class Principal {

	public static void main(String[] args) {
		ImplValidacion iValidacion = new ImplValidacionProxy("http://localhost:8080/ProveedorWebSOAP/services/ImplValidacion");
		Persona per = new Persona();
		per.setUsername("ana");
		per.setPass("anita");

		try {
			per = iValidacion.validarPersona(per);
			System.out.println("Estado de usuario:" + per.getStatus() + "  Mensaje de Usuario: " + per.getMensaje());
			System.out.println(per.getNombre() + " " + per.getApellido());
			
		} catch (RemoteException e) {
			e.printStackTrace();
		}

	}

}

Video resumen





Creado con eXeLearning (Ventana nueva)