none
Duda wsdl en servicio WCF RRS feed

  • Pregunta

  • Hola

    Estoy construyendo un servicio WCF que devuelve un objeto del tipo Consulta que tengo definido en una clase de mi capa común, la clase la tengo marcada con los atributos DataContract y DataMember respectivamente.

    Mi duda es que el WSDL que se genera para el servicio no aparece ningún Tag del tipo complexType o XmlElement en donde se especifique los atributos del objeto Consulta.

    <wsdl:message name="ConsultaVigencia_ObtenerVigencia_InputMessage">
      <wsdl:part name="parameters" element="tns:ObtenerVigencia" /> 
      </wsdl:message>
    - <wsdl:message name="ConsultaVigencia_ObtenerVigencia_OutputMessage">
      <wsdl:part name="parameters" element="tns:ObtenerVigenciaResponse" /> 
      </wsdl:message>
    - <wsdl:portType name="ConsultaVigencia">
    - <wsdl:operation name="ObtenerVigencia">
      <wsdl:input wsaw:Action="http://EuroAmerica/ServicioAutoconsulta/ConsultaVigencia/ObtenerVigencia" message="tns:ConsultaVigencia_ObtenerVigencia_InputMessage" /> 
      <wsdl:output wsaw:Action="http://EuroAmerica/ServicioAutoconsulta/ConsultaVigencia/ObtenerVigenciaResponse" message="tns:ConsultaVigencia_ObtenerVigencia_OutputMessage" /> 
      </wsdl:operation>
      </wsdl:portType>
    

    No se como podría una aplicación que no sea .NET utilizar el servicio si no esta la especificación de los datos que devuelve.

    Saludos

    lunes, 25 de noviembre de 2013 14:42

Respuestas

  • >>Pero que pasa con una aplicación Java o PHP?, también podrán generar estos archivos xsd al incorporar la >>referencia del servicio?

    si a estos les pasas el wsdl como archivo para que generen el proxy tambien debes proporcionarles los xsd

    >>tengo que tener certeza de que una aplicación distinta de .NET puede consumir el servicio.

    la unica forma de tener la certeza es realizando una prueba de concepto

    realiza en java una aplicacion simple que consuma tu servicio para asegurar la tecnica y pasos que debes utilizar para poder invocar al servicio

    se que se pueden consumir, pero para estar 100% seguro no hay mejor camino que realizar una prueba pequeña para asegurarse

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta croma96 lunes, 25 de noviembre de 2013 17:23
    lunes, 25 de noviembre de 2013 16:18

Todas las respuestas

  • hola

    por lo general los datos son definidos en archivos separados al wsdl,en archivos de extension .xsd

    crea un web reference al wsdl y analiza el codigo generado, seguro veras alli los xsd que menciono

    imagen1

    imagen2

    deberias poder ver en el wsdl la definicion del schema que apunta a otros archivos donde se definen los tipos de datos

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    lunes, 25 de noviembre de 2013 15:30
  • Leandro

    Si tienes razón al crear el proxy en el cliente se pueden ver todos esos archivos que especifican los datos que serán transferidos, por lo menos en .NET. Pero que pasa con una aplicación Java o PHP?, también podrán generar estos archivos xsd al incorporar la referencia del servicio?, tengo que tener certeza de que una aplicación distinta de .NET puede consumir el servicio.

    Saludos

    lunes, 25 de noviembre de 2013 15:44
  • >>Pero que pasa con una aplicación Java o PHP?, también podrán generar estos archivos xsd al incorporar la >>referencia del servicio?

    si a estos les pasas el wsdl como archivo para que generen el proxy tambien debes proporcionarles los xsd

    >>tengo que tener certeza de que una aplicación distinta de .NET puede consumir el servicio.

    la unica forma de tener la certeza es realizando una prueba de concepto

    realiza en java una aplicacion simple que consuma tu servicio para asegurar la tecnica y pasos que debes utilizar para poder invocar al servicio

    se que se pueden consumir, pero para estar 100% seguro no hay mejor camino que realizar una prueba pequeña para asegurarse

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta croma96 lunes, 25 de noviembre de 2013 17:23
    lunes, 25 de noviembre de 2013 16:18
  • Leandro

    Precisamente en eso estoy, acabo de bajar eclipse para crear una aplicación java que consuma el servicio web.

    Marcare tu ultimo post como respuesta, pero antes quisiera saber si tienes alguna referencia de WCFExtras, que aparece en codeplex y que según lo que he leído crea un archivo wsdl plano(sin referencias a los xsd y que incorpora en el propio wsdl los XmlElement) para que otras aplicaciones no .NET puedan consumirlo

    Gracias

    lunes, 25 de noviembre de 2013 16:44