Normalmente cuando recurrimos al uso de los Web Services lo creamos tanto del lado servidor como cliente en el mismo lenguaje, pero no siempre es así, varios pueden ser estos motivos, trabajamos con otra empresa que desarrolla en otro lenguaje que el nuestro, o queremos mezclar dos sistemas ya existentes sin construir todo de nuevo, incluso muchos otros motivos inimaginables. Hoy haremos un WS server construido con Java y NetBeans bastante sencillo, que recibirá 1 parámetro de fecha retornará la edad, esto será consumido desde una aplicación cliente construida en VB.net. Primeramente abrimos nuestro IDE y creamos un proyecto nuevo Java Web, de tipo Web Application..

Una vez elegido le asignamos un nombre, en este caso WebApp, además de asignar la ruta del proyecto..

Ahora procedemos a asignar el servidor de aplicación que queremos usar, si no tenemos configurado esto podemos agregar uno nuevo, en mi caso use Tomcat 6 ya que lo tenía instalado, pero sin ningún problema podría utilizarse la versión 5.5, o el mismo Glassfish que propone el IDE..

En la siguiente pantalla nos da la opción de elegir el framework a utilizar, para este ejemplo no elegimos ninguno, y terminamos este wizzard. Lo siguiente a hacer es, crear el nuevo Web Service de este modo:
Asignamos el nombre de la clase WSDevTroce, dentro del paquete ws

Teniendo ya nuestra clase, necesitamos agregar una operación o método, haciendolo así:
El método se llamará CalcularEdad..
El código que necesitamos agregar es el siguiente, el cual se dedica a hacer un resta de la fecha que recibe con la actual del sistema. El algoritmo de calculo expuesto tiene el inconveniente que no previene años bisiestos, así que podría eventualmente tener una diferencia sustancial, pero el objetivo de esta guía no es hacer restas de fechas donde sería mejor utilizar la clase GregorianCalendar, sino mostrar el uso de un WS creado con Java y ser consumido por .Net
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package ws; import javax.jws.WebMethod; import javax.jws.WebService; /** * @author GeekZero@DevTroce.com */ @WebService() public class WSDevTroce { /** * Web service operation */ @WebMethod(operationName = "CalcularEdad") public String calcularEdad(java.util.Date fechaNacimiento){ // obtener la fecha del sistema java.util.Date hoy = new java.util.Date(); // obtener el long de las fechas para hacer la diferencia long fechaInicialMs = fechaNacimiento.getTime(); long fechaFinalMs = hoy.getTime(); // restar las fechas (obtenida en milisegundos) long diferencia = fechaFinalMs - fechaInicialMs; /* Calcular cuantos años hay de diferencia, no se tienen en cuenta los años bisientos por lo que pueden tener un margen de error */ double dias = Math.floor((diferencia / (1000 * 60 * 60 * 24) / 365)); // retornar calculo return "Tienes: " + (int)dias + " años"; } // end calcularEdad } // end WSDevTroce |
Ya vamos terminando el lado de Java, tan sólo nos queda presionar F6 y testear el WS, lo hacemos de la siguiente manera:
Con todo esto hecho correctamente, podemos pasar a construir el lado cliente, que será una Aplicación Web con ASP.net escrita en VB.net, creamos un proyecto web nuevo llamado WSCliente..
La página que vamos a crear debe quedar así, obviamente no es para nada estético, de eso se encargaría uds
sólo queremos probar la funcionalidad.. Agregamos la referencia web necesaria..
Lo necesario e importante ahora es agregar la referencia web mediante el WSDL, en el siguiente menú..

Con esto agregaríamos finalmente la referencia del Web Service..
El código debe ser el siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <script><!--mce:0--></script> <form id="form1"> <div> </div> <div> </div> </form> |
Y wola!, quedando así el despliegue completo..

Articulos Relacionados:









en
en
en
en
Ya instale los Plugins de NetBeans necesarios, ya puedo ver la opcion WebApplication Server, pero el NetBeans no encuentra la instalacion del Tomcat, al parecer debo buscarlo y configurarlo desde el Boton ‘Add Server’ (en la pantalla Servers and Settings)
Continuo trabajando
Para habilitar la opción de Web Application que esta en el menú:
File->New Project->Java Web
Debes instalar (actualizar) los Plugins que te faltan. Ve al menú Tool->Plugins y depues en la pestaña Update, buscas el Java WebApplications y lo instalas. El Netbeans lo debe descargar con todas sus dependencias y actualizartelo.
Alguien sabe por casualidad como invocar un web service de java desde Vb 6.0… si ya se que es algo antiguo, pero necesito terminar un trabajo y no se como engancharlos… Gracias por su apoyo…!!!
fijate aqui http://www.elguille.info/NET/dotnet/clienteVB6servicioWeb.htm
Muy interesante, tratare de implementarlo y les cuento como me fue.
Baje e instale el NetBeans IDE 6.8, tengo el Java 1.6.0.23, y es un WinXp ServicePack 2, pero no veo la opción de crear un nuevo proyecto WebApplication desde el NetBeans.
Pueden decirme como habilito esta opción, gracias.
.