Advertisement

Responsive Advertisement

Web Service y Web Service Client en NetBeans 6.0

Web service para proporcionar servicios asociados al ingreso sobre la base de datos que ya creamos con anterioridad y crear un Web service client para consumir dichos servicios.


Sin mas preámbulo crearemos un web service, para ésto haremos click derecho sobre el proyecto -> new -> web service ...

ingresamos un nombre, en este caso MisWebServices y nos fijamos que el package sea org.servidor ...


luego veremos lo siguiente ...




pinchamos add operation para crear un servicio, en Name colocamos el nombre del servicio que corresponde a un web method, que en éste caso retornará un dato de tipo String y recibirá un parámetro que corresponde al rut del usuario y es de tipo String ...


luego agregamos otro servicio y lo nombramos pagarDeuda el cual retorna un objeto de tipo String y recibe dos parámetros de tipo Stringrut y monto ...


luego creamos un tercer servicio y lo nombraremos obtenerUsuario el cual retornará un objeto de tipo UsuarioBean y recibe como parámetro el rut del usuario de tipo String ...


Ya tenemos declarados los web services, pero aún no están implementados. Si se fijan en la pantalla donde agregaron las operaciones o servicios hay dos opciones, una es Design y la otra es Source, si pinchan Source verán el editor de la clase con los métodos creados anteriormente pero sin implementación, es ahí donde ustedes pueden llamar a la clase ConexionBDDataSource que habiamos creado anteriormente y agregar la lógica que corresponda para manejar los datos ingresados por el usuario y consultar a la base de datos y responderle al usuario. Lo que yo recomiendo es crear una capa de lógica intemedia que se encargue de hacer las validaciones correspondientes (que el usuario exista, que tenga deuda, que no pague cero pesos, etc.) y de esa forma el diseño queda en multicapas y es mas facil después para cambiar alguna cosa y que su sistema sea adaptable a dicho cambio (flexible, escalable, etc.). Por ahora no voy a entrar en detalles sobre eso ...


Ahora toca crear un web client y para éste ejemplo usaremos el mismo proyecto, haremos click derecho sobre el proyecto -> new -> web service client ...


luego seleccionamos la primera opcion (project), pinchamos browse y seleccionamos el web service que ya habiamos creado antes ...


ahora solo resta comenzar a llamar a los servicios expuestos a través del web service usando el web service client, esto se puede hacer en una aplicación web tanto como en una aplicación de escritorio, no entraré en detalles de como crear una página web en java (jsp) pero diré que en tanto tengan una simplemente hacen click derecho sobre ésta y verán la opción Web service client resource -> call web service operation ...


ahí podrán ver los servicios expuestos en el web service ...


al seleccionar un servicio, automáticamente se les creará un pedazo de código que se encargará de obtener el servicio por ustedes y solo necesitarán implementar lo que corresponda al resultado de obtener algo del servicio según corresponda, en éste caso llamamos al servicio obtenerUsuario ya que estamos en la página que valida al usuario (para iniciar sesión) ...


y con eso ya tenemos cubierto el tema de web service y web service client, como ven con NetBeans es simplemente hacer un par de clicks y ya está, sin necesidad de registrar lineas en archivos XML ni nada, lo hace por nosotros y solo nos preocupamos por la implementación, que es lo mas importante al momento de desarrollar. A continuación les dejo unas capturas del sistema completo y corriendo (con la implementación de los web service, una capa extra de lógica en el servidor y con todas las páginas web hechas) ...







Este sistema es multicapas, 3 capas y cada una subdividida en algunas capas mas, de esa manera obtenemos un mejor diseño y un sistema que es capaz de adaptarse a cambios sin necesidad de rehacer todo el sistema. Si bien es solo un ejemplo pequeño el cual no amerita tantas capas, quize hacerlo así para mostrarles como se hace y compartirlo. Espero les haya sido de utilidad.


EDITADO!!!

Subí el código a un servidor para que puedan hacer la descarga sin necesidad de enviarme sus correos (así no tienen que esperar a que yo lea el correo para rebotarlo a ustedes), si tienen problemas para la descarga seguimos con el método tradicional del correo electrónico.

Descarga

Publicar un comentario

0 Comentarios