elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 04:32  


Tema destacado: Suscripción al boletín mensual de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (Moderador: [D4N93R])
| | | |-+  [Ayuda] Webservice (archivo wsdl) .NET
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Ayuda] Webservice (archivo wsdl) .NET  (Leído 2,285 veces)
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
[Ayuda] Webservice (archivo wsdl) .NET
« en: 11 Julio 2011, 04:04 »

Buenas noches.  >:D

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.
 
Código
"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.  :D


« Última modificación: 29 Agosto 2011, 17:19 por oscarj24 » En línea
seba123neo


Desconectado Desconectado

Mensajes: 3.214



Ver Perfil WWW
Re: [Ayuda] Webservice (archivo wsdl) .NET
« Respuesta #1 en: 11 Julio 2011, 04:52 »

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.

Código
<%@ 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

Mucha gente, especialmente la ignorante desea castigarte por decir la verdad, por ser correcto, por ser tú. Nunca te disculpes por ser correcto, o por estar años delante de tu tiempo.
Si estas en lo cierto, y lo sabes, que hable tu razón. Incluso si eres una minoria de uno solo, la verdad sigue siendo la verdad. M. Gandhi
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Webservice (archivo wsdl) .NET
« Respuesta #2 en: 11 Julio 2011, 04:55 »

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


Desconectado Desconectado

Mensajes: 3.214



Ver Perfil WWW
Re: [Ayuda] Webservice (archivo wsdl) .NET
« Respuesta #3 en: 11 Julio 2011, 06:41 »

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:

Código:
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

Mucha gente, especialmente la ignorante desea castigarte por decir la verdad, por ser correcto, por ser tú. Nunca te disculpes por ser correcto, o por estar años delante de tu tiempo.
Si estas en lo cierto, y lo sabes, que hable tu razón. Incluso si eres una minoria de uno solo, la verdad sigue siendo la verdad. M. Gandhi
oscarj24

Desconectado Desconectado

Mensajes: 65


Ver Perfil
Re: [Ayuda] Webservice (archivo wsdl) .NET
« Respuesta #4 en: 11 Julio 2011, 07:24 »

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:

Código:
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
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problea al retornar un Array con webservice.net
.NET
apache_scrc 4 1,571 Último mensaje 19 Agosto 2010, 18:10
por apache_scrc
Android (Descomprimir String GZIP que viene de Webservice .NET)
Java
seba123neo 4 2,283 Último mensaje 28 Noviembre 2010, 01:47
por seba123neo
Webservice, problema el retornar un dato con un SoapServer(PHP)
PHP
egyware 1 1,531 Último mensaje 16 Enero 2011, 02:41
por egyware
Como separar parametros que retorna array con webservice nusoap
PHP
Graphixx 0 319 Último mensaje 15 Marzo 2012, 23:26
por Graphixx
Llamada a WebService mediante SOAP
PHP
|Miguel| 1 91 Último mensaje 21 Mayo 2012, 12:38
por |Miguel|
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines