jueves, 30 de octubre de 2008

consumir un web service desde j2se

El tema de web service pertenece mas a j2ee , pero igual pueden ser
util para una aplicacion de escritorio.

Un Web Services (WS) es una aplicación que puede ser descripta
, publicada, localizada, e invocada a través de una red, generalmente
Internet.

Los WS son a los efectos del consumidor componentes que se
encuentran dentro de una caja negra, que pueden ser utilizados
sin preocuparse de como fueron implementados, y ser accedidos
utilizando XML (SOAP) , generalmente sobre HTTP.

La arquitectura básica del modelo de WS describe un consumidor,
un proveedor y ocasionalmente un corredor (broker) y relacionados
con estos agentes está las operaciones de publish (publicar),
f ind (encontrar) y bind (enlazar).

Los requerimientos a la hora de desarrollar o consumir un WS son:

- una forma estándar de representar los datos: XML
- un formato común y extensible de mensaje: SOAP
- un lenguaje común y extensible para describir los servicios:
WSDL (basado en XML).
- una forma de descubrir los servicios en Internet: UDDI
(basado en XML).


este tema es muy interesante y util , imagine que tiene una
aplicacion en asp.net y quiere consumir un procedimiento de
esa aplicacion desde java , entonces con nuestro querido web
service lo podemos realizar.

Ejemplo:

Vamos a consumir un metodo de aplicacion web application de
java ( Como siempre con nuestro querido netbeans 6)


1.- primero creamos nuestro proyecto web application , selecionamos el JavaServer Face
para este ejemplo.


2.- creamos el metodo


3.- tenemos que seleccionar souce y escribir dentro del metodo el procedimiento
(en este caso es la suma)

solamente lo que escribi fue : int s= i+j ;
y el return de 0 lo cambie a s

4.- en nuestra aplicacion normal de java creamos un nuevo Web Service Client5.- en project abrimos el brower y seleccionamos el web service que creamos


6.- al aceptar el web service , en nuestro proyecto se nos creara una paquete
llamado web service references.

ahora vamos a crear un from con unos jTextfield y un jButton el cual va a
llamar al web service.


7. ahora desplegamos nuestro web service de nuestra aplicacion y arastramos
el metodo al jButton1ActionPerformed ( evento del boton ) .



dentro de nuestro metodo modificamos lo siguiente

int i = Integer.parseInt(jTextField1.getText());
int j = Integer.parseInt(jTextField2.getText());

jTextField3.setText(""+result);

como observacion final tenemos que tener el servidor GlassFish , para poder
hacer correr nuestro web service .

No hay comentarios: