Consumir Servicio Web desde Netbeans
Una tecnología muy usada desde hace ya varios años son los Servicios Web. Explicaremos como consumir un Servicio Web escrito en C# desde una aplicación web en Netbeans en Java.
En Visual Studio:
Paso 1.- Nos vamos a Archivo > Nuevo > Sitio Web y elegimos Servicio Web ASP.NET, damos clic en “Examinar” y nos aparecerá la siguiente pantalla.
Paso 2.- Hacer clic en “Crear nueva Aplicación Web” (es el primer ícono de la parte superior derecha), luego hacer clic en “Abrir” y aceptamos.
Paso 3.- Agregamos el siguiente código:
[WebMethod]
public string MetodoWS() {
return "Hola ASP.NET me estás consumiendo";
}
Y presionamos F5, se creará un archivo de configuración “web.config”.
Paso 4.- Generamos y publicamos nuestro WebService:
.
Paso 5.- Nos mostrará la siguiente pantalla, vamos clic en “Aceptar”.
.
Y probamos:
Paso 6.- Se abrirá la página del web service, ahora hacemos clic en “Descripción del servicio” y copiamos la dirección que aparecerá en la URL en mi caso es:
“http://localhost/WebService1/Service.asmx?WSDL“ que viene a ser un archivo XML.
.
Paso 7.- En Netbeans crearemos un proyecto Web, Archivo>New Project> Java WebApplication
Paso 8.- Vamos a WebPages y agregaremos un “Web Service Client” si no lo encuentran vayan a “others”, copiamos la dirección de hace un momento en WSDL, finalizamos.
Paso 9.- Ahora en nuestra página JSP en algún lugar en blanco hacer clic derecho y seleccionar: Web Services Client Resources > Call Web Service Operation
Seleccionamos, el primero:
Paso 10.- Se creará automaticamente código para poder hacer llamada a los métodos del WebService a consumirse.
<%-- start web service invocation --%><hr/>
<%
try {
<span style="white-space:pre"> </span>org.tempuri.Service service = new org.tempuri.Service();
org.tempuri.ServiceSoap port = service.getServiceSoap();
// TODO process result here
java.lang.String result = port.metodoWS();
out.println("Result = "+result);
} catch (Exception ex) {
// TODO handle custom exceptions here
}
%>
<%-- end web service invocation --%><hr/>
Modificaremos un poco el código para mostrar el resultado en una etiqueta HTML.
<body>
<%-- start web service invocation --%><hr/>
<%
String resultado="";
try {
org.tempuri.Service service = new org.tempuri.Service();
org.tempuri.ServiceSoap port = service.getServiceSoap();
// TODO process result here
java.lang.String result = port.metodoWS();
resultado = result;
} catch (Exception ex) {
// TODO handle custom exceptions here
}
%>
<%-- end web service invocation --%><hr/>
<p><%=resultado%></p>
</body>
Corremos nuestra página JSP:
Espero les sirva de ayuda. Buen Día.
→ Entradas Relacionadas:














Uhmm interesante, aunque preferiria crear tanto el servicio como el consumidor desde java. en ese caso podrias utilizar Axis para publicar el servicio. Y seguir consumiendolo como lo dices en tu nota.
Oye tu ejemplo no sirve porque estoy haciendo esto mismo que explicas en netbeans 6.8 RC1 y dice lo siquiente org.tempuri.Service package does not exist.
Porque a ti no te saldria eso?
Hey men muchas gracias
salvaste un parcial jeje
ademas porfin entendi!!!
De nada Leonardo, para eso estamos. Saludos.
Muchas gracias, llevo casi 3 dias intentando conectar mi web service asp.net con java usando netbeans, y este ejemplo esta chevere, pero quisiera pedirte una ayuda mas y es autenticar, como paso los parametros de validacion para el uso de webservice
Hola, autenticar? por ejemplo?
Bueno usando soap, pasar parametros de validacion como usuario, clave, estos seran validados dentro del webservice asp.net
A ok, pues simple, sólo tienes q poner parámetros al método, en este caso en ASP.NET, y los valores los envías desde java por un textbox por ejemplo.
public string MetodoWS(string user, string pass) {
//valida…
return “Hola ASP.NET me estás consumiendo”;
}
Umm ok, pero se puede hacer usando las cabeceras soap?
Deja tu Opinión
Síguenos
Feed RSS:
Recibe nuestros artículos via Feed
RSS via E-Mail:
Recibe nuestros artículos en tu Mail
Twitter:
Síguenos en Twitter @datanoia
Licencia
Últimos Posts
Comentarios
Switch to our mobile site