Autor
|
Tema: [Ayuda] Webservice (archivo wsdl) .NET (Leído 11,090 veces)
|
oscarj24
Desconectado
Mensajes: 65
|
Buenas noches.
Mi problema es el siguiente:
Me dieron un archivo WSDL con las funciones de un web service, con lo cual tengo que generar una clase en C# o VB.net.
Todo comienza al momento de intentar generar el WSDL en una clase con la herramienta "WSDL.exe" desde la consola del Visual Studio 2005, 2008 o 2010 ya que, al intentarlo de diversas formas, se genera un error o una clase vacia.
Segun lo que me dicen, puede existir un problema con los "namespaces" del XML.
Ahora, les dare una explicacion de lo que he estado haciendo hasta el momento. Por ejemplo, si genero una clase en C#o VB.net de un wsdl como normalmente se deberia hacer usando el comando que figura en la imagen, obtengo el siguiente error:
Comando1-Error1: Buscando un poco de informacion al respecto, lei que si especificaba el protocolo "soap12" del wsdl en el comando, se podria generar sin problemas y, al intentarlo, obtuve los siguientes errores (Ver imagen "Comando2-Error2") y, aunque se genero una clase, esta se encuentra vacia ("Ver imagen "Comando2-Clase-Vacia")
Comando2-Error2:Comando2-Clase-Vacia:Por ultimo, decidi buscar otras alternativas y encontre otra herramienta, esta se llama "WSFC.exe" y permite hacer lo mismo que la herramienta que viene por defecto con el Visual Studio (WSDL.exe). Segun la web del creador, esta herramienta es mas beneficiosa que la del Visual Studio y la describe asi:
"WSCF offers a simple yet powerful WSDL Wizard that abstracts away all the nitty-gritty details of WSDL and therefore does not give room for making errors and wrong assumptions just by trying to use and applying everything that can be done stated by the original WSDL specification."
Pueden informarse mas de esto en los siguientes links:
http://www.thinktecture.com/resourcearchive/tools-and-software/wscf
http://weblogs.thinktecture.com/cweyer/2007/12/running-wscf-07-in-visual-studio-2008.html
http://www.thearchitect.co.uk/weblog/archives/2007/05/installer_error_code_2869_on_windows_vista_and_how_to_correc.html
Sin embargo, no obtuve buenos resultados al usar la nueva herramienta, y esta vez utilice un comando parecido a los que usaba en las imagenes anteriores solo que en vez de usar WSDL, usaba WSFC.
"WSFC miwsdl.wsdl /l:cs"
y siempre generaba una clase (tambien vacia) pero con una descripcion un poco mas detallada del posible error que existe hasta ahora cuando intento generar la clase del WSDL que poseo.
La descripcion del error que aparecia en la imagen vacia era este:Saludos y gracias por su tiempo.
|
|
« Última modificación: 29 Agosto 2011, 17:19 pm por oscarj24 »
|
En línea
|
|
|
|
seba123neo
|
Hola, yo he creado varios webservices y nunca me fije en ese archivo .wsdl, simplemente creo una clase normal, y le agrego los metodos, y despues lo paso a formato .asmx que es el formato de los webservices y listo, despues lo publico en el IIS y ya lo carga como webservice, por ejemplo, este es el codigo de un webservcie basico con 2 metodos que retornan un simple boolean. <%@ WebService Language="VB" Class="wsprueba" %> Imports System.Web.Services <WebService(Namespace:="http://prueba", Description:="Web Service de Prueba")> _ Public Class wsprueba Inherits System.Web.Services.WebService <WebMethod(Description:="Metodo Prueba")> _ Public Function OnLine() As Boolean Return True End Function <WebMethod(Description:="Metodo Prueba 2")> _ Public Function OnLine2() As Boolean Return True End Function End Class
despues si desde un proyecto te queres conectar al webservice, debes ir al menu para agregar una referencia web, le pones la direccion del webservice y ahi te crea el enlace al webservice y lo podes manipular, ver sus metodos, llamarlos..etc, te crea ese archvio .wsdl, pero nunca lo toque. saludos.
|
|
|
En línea
|
|
|
|
oscarj24
Desconectado
Mensajes: 65
|
Claro, eso es lo que uno haria si es que hace un webservice desde cero, pero si quieres reutilizar sus metodos usas el wsdl y desde cualquier entorno generas una clase (mas o menos el metodo inverso a lo que dices, gracias por tu tiempo pero no contesta mi pregunta)
|
|
|
En línea
|
|
|
|
seba123neo
|
nunca lo hice, pero recien lo probe y me funciona con un proyecto que ya tengo de visual basic, fui al directorio donde esta el wsdl.exe, en mi caso esta en "C:\Archivos de programa\Microsoft SDKs\Windows\v6.0A\bin", cree un archivo . bat con el comando a ejecutar, y puse en esa carpeta el wsdl de un webservice que tengo en un proyecto de visual basic, el comando es: wsdl.exe wsprueba.wsdl /l:VB /serverInterface ejecuto el .bat y me genera la clase de visual basic con todos los metodos adentro y parametros de los mismos. probe con tu clase, le cambie que sea para CS y no me lo toma, me dice que no encuentra una ruta de referencia con un archivo ws-tra.xsd, y lo tengo en el mismo directorio, la verdad no se que puede ser.
|
|
|
En línea
|
|
|
|
oscarj24
Desconectado
Mensajes: 65
|
nunca lo hice, pero recien lo probe y me funciona con un proyecto que ya tengo de visual basic, fui al directorio donde esta el wsdl.exe, en mi caso esta en "C:\Archivos de programa\Microsoft SDKs\Windows\v6.0A\bin", cree un archivo . bat con el comando a ejecutar, y puse en esa carpeta el wsdl de un webservice que tengo en un proyecto de visual basic, el comando es: wsdl.exe wsprueba.wsdl /l:VB /serverInterface ejecuto el .bat y me genera la clase de visual basic con todos los metodos adentro y parametros de los mismos. probe con tu clase, le cambie que sea para CS y no me lo toma, me dice que no encuentra una ruta de referencia con un archivo ws-tra.xsd, y lo tengo en el mismo directorio, la verdad no se que puede ser. En realidad creo que algun error debes tener con la ruta de los "xsd" ya que al ubicar todos los archivos que puse en el zip en una carpeta, no te deberia dar problemas como ves en la imagen. Sin embargo, al reconocer los "xsd" y hacer todo normalmente, me genera el mismo error que cite al abrir este tema, gracias por seguir intentandolo.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problea al retornar un Array con webservice.net
.NET (C#, VB.NET, ASP)
|
apache_scrc
|
4
|
5,441
|
19 Agosto 2010, 18:10 pm
por apache_scrc
|
|
|
Ayuda WEbService plz.
.NET (C#, VB.NET, ASP)
|
visualfree
|
2
|
2,781
|
21 Abril 2013, 07:28 am
por .::IT::.
|
|
|
Consumir un Web Service WSDL desde NETBEANS
Programación General
|
desamota
|
0
|
3,455
|
7 Enero 2015, 20:19 pm
por desamota
|
|
|
Implementar un servicio web en dos PC´s con WSDL
Java
|
jam man
|
1
|
1,543
|
10 Diciembre 2016, 17:29 pm
por sapito169
|
|
|
Verificar que una WSDL este activa
Java
|
alexis33de
|
0
|
2,327
|
22 Septiembre 2017, 15:47 pm
por alexis33de
|
|