RSS

Blog posts of '2018' 'mayo'

SERVICIOS WEB RES Y RESTFUL

REST se ha convertido en una de las tecnologías más importantes para aplicaciones web,  y continua desarrollándose paralelamente a la orientación de las tecnologías API. Actualmente, los lenguajes de desarrollo incluyen frameworks para construir servicios web Restful.  Por esta razón, es importante que los desarrolladores web y los arquitectos, tengan un claro entendimiento de los servicios Rest y Restful.

REST (Representational State Transfer), el término transferencia de estado, se refiere al uso de operaciones tales como get, deleteput, entre otros, que se usan cuando se utiliza HTTP. Los servicios rest y restful, brindan interoperabilidad entre los sistemas informáticos de Internet. Los servicios web con características REST permiten que los sistemas solicitantes accedan y manipulen las representaciones textuales de los recursos web mediante el beneficio de un conjunto uniforme y predefinido de operaciones sin estado. Otros tipos de servicios web, como los servicios web SOAP, exponen sus propios conjuntos arbitrarios (escogidos al azar) de operaciones.

Características de un servicio Restful

Un servicio Restful, como característica puede administrar recursos de imágenes, servicios de video, páginas web, entre otros. El principal propósito es proporcionar una ventana a los usuarios para que puedan acceder a estos recursos. De ahí, que estos servicios deben ser fáciles de implementar, mantenibles, extensibles y escalables en el tiempo. Las principales propiedades y características de un servicio restful son las siguientes: (1.) Representaciones(2.) mensajes(3.) URIs(4.) interfaz uniforme(5.) apátrida(6.) enlaces entre recursos  y  (7.) almacenamiento caché.  

El enfoque de un servicio Restful está en los recursos y en cómo proporcionar acceso a estos recursos. Una vez identificados los recursos, el paso siguiente será encontrar una manera de representar estos recursos en el sistema. Se puede usar cualquier formato para representar los recursos, por ejemplo, dependiendo de los requeriemientos, se puede usar JSON o XML. Y si,  se está desarrollando servicios web para llamadas AJAX, entonces una buena elección es utilizar JSON.

Representación de un recurso JSON. 

1
2
3
4
5
6
{
    "ID": "1",
    "Nombre": "H Abril",
    "Email": "habril@gcidsa.com",
    "Ciudad": "Colombia"
}

Representación de un recurso XML.

1
2
3
4
5
6
7
8
9
10
<Persona>
 <ID>1</ID>
 <Nombre>H Abril</Nombre>
 <Email>habril@gcidsa.com</Email>
 <Ciudad>Colombia</Ciudad>
</Persona>

 1. Representations

El enfoque de un servicio Restful está en los recursos y en cómo proporcionar acceso a estos recursos. Una vez identificados los recursos, el paso siguiente será encontrar una manera de representar estos recursos en el sistema. Se puede usar cualquier formato para representar los recursos, por ejemplo, dependiendo de los requeriemientos, se puede usar JSON o XML, y si,  se está desarrollando servicios web para llamadas AJAX, entonces una buena elección es utilizar JSON.

2. Mensajes.

El cliente y el servicio hablan entre ellos a través de mensajes. Los clientes envían una solicitud al servidor y el servidor responde con una respuesta.  Además de los datos reales, estos mensajes también contienen algunos metadatos sobre el mensaje. Es importante tener algunos antecedentes sobre los formatos de solicitud y respuesta HTTP 1.1 para diseñar servicios web RESTful.

Formato de una solicitud HTTP 

El fromato está conformado por:

Ejemplo POST        

1
2
3
4
5
6
7
8
9
10
11
Host: MyService
Content-Type: text/xml; charset=utf-8
Content-Length: 123
<?xml version="1.0" encoding="utf-8"?>
<Person>
  <ID>1</ID>
  <Name>H Abril</Name>
  <Email>H.Abril@gcidsa.com</Email>
  <Country>Colombia</Country>
</Person>

a. El verbo, que corresponde con un método como GET, PUT POST, DELETE, OPTIONS, ect.

b. La URI, es decir el recurso sobre cual la operación es ejecutada.

c. Un HTTP, que es la versión de HTTP, que generalmente es 1.1. 

d. El encabezado de la solicitud,  que contiene los metadatos como una colección de pares clave - valor de encabezados, y sus valores. Esta configuración contiene información sobre el mensaje y su remitente. Por ejemplo, el tipo de cliente, los formatos que admite el cliente, el tipo de formato del cuerpo del mensaje, las configuraciones caché  para la respuesta, entre otra información. 

e. El cuerpo de la solicitud, corresponde con el mensaje real. En un servicio Restful, es donde las representaciones de recursos definen el mensaje.

 Ejemplo GET 

1
2
3
4
5
6
Host: www.w3.org
Accept: text/html,application/xhtml+xml,application/xml; …
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 …
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8,hi;q=0.6

En el ejemplo POST, se puede observar el comando POST, seguido por el URI y la versión HTTP. que son algunos de los elementos del encabezado. Host es la dirección del servidor. Content-Type informa sobre el tipo de contenido en el cuerpo del mensaje. Content-Length es la longitud de los datos en el cuerpo del mensaje. Content-Length se puede usar para verificar que se haya recibido todo el cuerpo del mensaje. Observe que no hay etiquetas de inicio o final en este mensaje.

 

 

 



 
BONDADES DEL SERVICIO WEB

Las aplicaciones web, se despliegan desde un servidor web para facilitar la interacción de un usuario por la intranet o internet a través de un navegador. La relación entre el usuario y una aplicación web,  hoy en día se traduce en una iniciativa y facilidad del servicio, debido a que el usuario podrá utilizar todos o varios de los servicios que ofrece una aplicación web, simplemente conectado a internet, en consecuencia será una actividad discrecional del usuario, el acceder a las aplicaciones de la banca, el comercio, o de la salud, entre otras,  sin estar sujeto a limitaciones de horario, barreras de uso o disponibilidad de un interlocutor para poder ejecutar una transacción.

Para nuestra compañía Cidsa SAS, uno de los aspectos fundamentales del servicio es el desarrollo de servicios web Soap para fortalecer la interoperabilidad entre las aplicaciones web, y es ahí,  donde hablamos de los servicios web para dinamizar la interacción entre aplicaciones o plataformas. 

Un servicio web Soap, básicamente cuenta con dos puntos para interconectarse, uno quien porporciona el servicio y otro quien lo consume, en sí, cada uno en un extremo es un servicio. Estos servicios pueden interconectarse a través de la red. En una arquitectura orientada a servicios, cualquier interacción punto a punto implica dos endpoints; uno que proporciona un servicio, y otro de lo consume.  Cada endpoint  que se sitúan en ambos "extremos" de la red que sirve de canal de comunicación entre ellos. Cada  endpoint se especifica mediante un URI (esquema://máquina/directorio/archivo#fragmento), corresponde a un identificador general, pero no de localización exacta,  como si le corresponde a la URL.  Más adelante haremos una definición más precisa entre la URI y la URL

Esencialmente se pueden definir dos tipos de servicios los Web Soap y los  Web Restful, los primeros utilizan mensaje  XML y el standar SOAP (Simple Object Acces Protocol) los cuales se escriben en un lenguale WSDL (Web Services Description Language), que es un lenguaje basado en XML para definir las interfaces sintácticamente.  Los segundos, WeB Rest (Representational State Transfer web services), se integran con HTTP que son los servicios basados en SOAP, no requieren mensajes XML o definiciones del servicio en forma de fichero WSDL. 

Para nuestros lectores dispondremos de un ejemplo básico de un servicio  web soap, implementado en WSDL. 

POST /v3sias/wslibrary/WServiceCum.asmx HTTP/1.1
Host: portal.jltcolombia.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://webcidsa/sias/WSLibrary/WServiceCum/CrearPoliza"

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <CrearPoliza xmlns="http://webcidsa/sias/WSLibrary/WServiceCum">
      <IdUser>int</IdUser>
      <opoliza>
        <IdPoliza>int</IdPoliza>
        <IdSucursal>int</IdSucursal>
        <IdPuntoVenta>int</IdPuntoVenta>
        <IdProducto>int</IdProducto>
        <IdTipoPoliza>int</IdTipoPoliza>
        <NumeroPoliza>string</NumeroPoliza>
        <FechaSolicitud>dateTime</FechaSolicitud>
        <LugarExpedicion>int</LugarExpedicion>
        <FechaExpedicion>dateTime</FechaExpedicion>
        <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
        <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
        <FechaPago>dateTime</FechaPago>
        <TipoTasa>int</TipoTasa>
        <TasaAplicada>decimal</TasaAplicada>
        <IndLiquidaIvaGastos>boolean</IndLiquidaIvaGastos>
        <ValorAsegurado>decimal</ValorAsegurado>
        <ValorPrima>decimal</ValorPrima>
        <ValorIva>decimal</ValorIva>
        <ValorGastos>decimal</ValorGastos>
        <ValorIvaGastos>decimal</ValorIvaGastos>
        <ValorOtros>decimal</ValorOtros>
        <ValorTotal>decimal</ValorTotal>
        <ProcentajeComision>decimal</ProcentajeComision>
        <ValorComision>decimal</ValorComision>
        <IvaComision>decimal</IvaComision>
        <IdEjecutivo>int</IdEjecutivo>
        <IdGerente>int</IdGerente>
        <NumeroCertificado>string</NumeroCertificado>
        <FechaRadicacion>dateTime</FechaRadicacion>
        <IdTomador>int</IdTomador>
        <IdResponsablePago>int</IdResponsablePago>
        <IdAseguradora>int</IdAseguradora>
        <IdSucursalAseguradora>int</IdSucursalAseguradora>
        <IndPrimaUnica>boolean</IndPrimaUnica>
        <DescripcionInteres>string</DescripcionInteres>
        <CodigoMoneda>int</CodigoMoneda>
        <TasaCambio>decimal</TasaCambio>
        <IndCoaseguro>boolean</IndCoaseguro>
        <IndMAgentes>boolean</IndMAgentes>
        <IndMGerencias>boolean</IndMGerencias>
        <IndMSucursales>boolean</IndMSucursales>
        <IndMEjecutivos>boolean</IndMEjecutivos>
        <DescripcionBienAsegurado>string</DescripcionBienAsegurado>
        <ValorAseguradoBien>decimal</ValorAseguradoBien>
        <NumeroContrato>string</NumeroContrato>
        <TipoRiesgo>int</TipoRiesgo>
        <FechaDesde>dateTime</FechaDesde>
        <FechaHasta>dateTime</FechaHasta>
        <ValorContrato>decimal</ValorContrato>
        <Notas>string</Notas>
        <IdCodigoTipoAnotacion>int</IdCodigoTipoAnotacion>
      </opoliza>
      <oamparos>
        <Amparos>
          <IdPoliza>int</IdPoliza>
          <IdAmparo>int</IdAmparo>
          <ValorAsegurado>decimal</ValorAsegurado>
          <ValorPrimaAmparo>decimal</ValorPrimaAmparo>
          <SumaValorAsegurado>boolean</SumaValorAsegurado>
          <InvVigente>boolean</InvVigente>
          <TasaAplicada>decimal</TasaAplicada>
          <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
          <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
          <PorcentajeDistribucionContrato>decimal</PorcentajeDistribucionContrato>
        </Amparos>
        <Amparos>
          <IdPoliza>int</IdPoliza>
          <IdAmparo>int</IdAmparo>
          <ValorAsegurado>decimal</ValorAsegurado>
          <ValorPrimaAmparo>decimal</ValorPrimaAmparo>
          <SumaValorAsegurado>boolean</SumaValorAsegurado>
          <InvVigente>boolean</InvVigente>
          <TasaAplicada>decimal</TasaAplicada>
          <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
          <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
          <PorcentajeDistribucionContrato>decimal</PorcentajeDistribucionContrato>
        </Amparos>
      </oamparos>
      <ocoaseguros>
        <Coaseguros>
          <IdPoliza>int</IdPoliza>
          <IdAseguradora>int</IdAseguradora>
          <Porcentaje>decimal</Porcentaje>
          <IndLider>boolean</IndLider>
        </Coaseguros>
        <Coaseguros>
          <IdPoliza>int</IdPoliza>
          <IdAseguradora>int</IdAseguradora>
          <Porcentaje>decimal</Porcentaje>
          <IndLider>boolean</IndLider>
        </Coaseguros>
      </ocoaseguros>
      <oagentes>
        <Agentes>
          <IdPoliza>int</IdPoliza>
          <IdAgente>int</IdAgente>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Agentes>
        <Agentes>
          <IdPoliza>int</IdPoliza>
          <IdAgente>int</IdAgente>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Agentes>
      </oagentes>
      <ogerencias>
        <Gerencias>
          <IdPoliza>int</IdPoliza>
          <IdGerencia>int</IdGerencia>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Gerencias>
        <Gerencias>
          <IdPoliza>int</IdPoliza>
          <IdGerencia>int</IdGerencia>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Gerencias>
      </ogerencias>
      <oejecutivos>
        <Ejecutivos>
          <IdPoliza>int</IdPoliza>
          <IdEjecutivo>int</IdEjecutivo>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Ejecutivos>
        <Ejecutivos>
          <IdPoliza>int</IdPoliza>
          <IdEjecutivo>int</IdEjecutivo>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Ejecutivos>
      </oejecutivos>
      <osucursales>
        <Sucursales>
          <IdPoliza>int</IdPoliza>
          <IdSucursal>int</IdSucursal>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Sucursales>
        <Sucursales>
          <IdPoliza>int</IdPoliza>
          <IdSucursal>int</IdSucursal>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Sucursales>
      </osucursales>
    </CrearPoliza>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <CrearPolizaResponse xmlns="http://webcidsa/sias/WSLibrary/WServiceCum">
      <CrearPolizaResult>
        <Id>long</Id>
        <IdBien>long</IdBien>
        <Mensaje>string</Mensaje>
      </CrearPolizaResult>
    </CrearPolizaResponse>
  </soap:Body>
</soap:Envelope>

SOAP 1.2

A continuación se muestra un ejemplo de solicitud y respuesta para SOAP 1.2. Es necesario reemplazar los marcadores de posición que aparecen con valores reales.

POST /v3sias/wslibrary/WServiceCum.asmx HTTP/1.1
Host: portal.jltcolombia.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <CrearPoliza xmlns="http://webcidsa/sias/WSLibrary/WServiceCum">
      <IdUser>int</IdUser>
      <opoliza>
        <IdPoliza>int</IdPoliza>
        <IdSucursal>int</IdSucursal>
        <IdPuntoVenta>int</IdPuntoVenta>
        <IdProducto>int</IdProducto>
        <IdTipoPoliza>int</IdTipoPoliza>
        <NumeroPoliza>string</NumeroPoliza>
        <FechaSolicitud>dateTime</FechaSolicitud>
        <LugarExpedicion>int</LugarExpedicion>
        <FechaExpedicion>dateTime</FechaExpedicion>
        <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
        <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
        <FechaPago>dateTime</FechaPago>
        <TipoTasa>int</TipoTasa>
        <TasaAplicada>decimal</TasaAplicada>
        <IndLiquidaIvaGastos>boolean</IndLiquidaIvaGastos>
        <ValorAsegurado>decimal</ValorAsegurado>
        <ValorPrima>decimal</ValorPrima>
        <ValorIva>decimal</ValorIva>
        <ValorGastos>decimal</ValorGastos>
        <ValorIvaGastos>decimal</ValorIvaGastos>
        <ValorOtros>decimal</ValorOtros>
        <ValorTotal>decimal</ValorTotal>
        <ProcentajeComision>decimal</ProcentajeComision>
        <ValorComision>decimal</ValorComision>
        <IvaComision>decimal</IvaComision>
        <IdEjecutivo>int</IdEjecutivo>
        <IdGerente>int</IdGerente>
        <NumeroCertificado>string</NumeroCertificado>
        <FechaRadicacion>dateTime</FechaRadicacion>
        <IdTomador>int</IdTomador>
        <IdResponsablePago>int</IdResponsablePago>
        <IdAseguradora>int</IdAseguradora>
        <IdSucursalAseguradora>int</IdSucursalAseguradora>
        <IndPrimaUnica>boolean</IndPrimaUnica>
        <DescripcionInteres>string</DescripcionInteres>
        <CodigoMoneda>int</CodigoMoneda>
        <TasaCambio>decimal</TasaCambio>
        <IndCoaseguro>boolean</IndCoaseguro>
        <IndMAgentes>boolean</IndMAgentes>
        <IndMGerencias>boolean</IndMGerencias>
        <IndMSucursales>boolean</IndMSucursales>
        <IndMEjecutivos>boolean</IndMEjecutivos>
        <DescripcionBienAsegurado>string</DescripcionBienAsegurado>
        <ValorAseguradoBien>decimal</ValorAseguradoBien>
        <NumeroContrato>string</NumeroContrato>
        <TipoRiesgo>int</TipoRiesgo>
        <FechaDesde>dateTime</FechaDesde>
        <FechaHasta>dateTime</FechaHasta>
        <ValorContrato>decimal</ValorContrato>
        <Notas>string</Notas>
        <IdCodigoTipoAnotacion>int</IdCodigoTipoAnotacion>
      </opoliza>
      <oamparos>
        <Amparos>
          <IdPoliza>int</IdPoliza>
          <IdAmparo>int</IdAmparo>
          <ValorAsegurado>decimal</ValorAsegurado>
          <ValorPrimaAmparo>decimal</ValorPrimaAmparo>
          <SumaValorAsegurado>boolean</SumaValorAsegurado>
          <InvVigente>boolean</InvVigente>
          <TasaAplicada>decimal</TasaAplicada>
          <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
          <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
          <PorcentajeDistribucionContrato>decimal</PorcentajeDistribucionContrato>
        </Amparos>
        <Amparos>
          <IdPoliza>int</IdPoliza>
          <IdAmparo>int</IdAmparo>
          <ValorAsegurado>decimal</ValorAsegurado>
          <ValorPrimaAmparo>decimal</ValorPrimaAmparo>
          <SumaValorAsegurado>boolean</SumaValorAsegurado>
          <InvVigente>boolean</InvVigente>
          <TasaAplicada>decimal</TasaAplicada>
          <FechaVigenciaDesde>dateTime</FechaVigenciaDesde>
          <FechaVigenciaHasta>dateTime</FechaVigenciaHasta>
          <PorcentajeDistribucionContrato>decimal</PorcentajeDistribucionContrato>
        </Amparos>
      </oamparos>
      <ocoaseguros>
        <Coaseguros>
          <IdPoliza>int</IdPoliza>
          <IdAseguradora>int</IdAseguradora>
          <Porcentaje>decimal</Porcentaje>
          <IndLider>boolean</IndLider>
        </Coaseguros>
        <Coaseguros>
          <IdPoliza>int</IdPoliza>
          <IdAseguradora>int</IdAseguradora>
          <Porcentaje>decimal</Porcentaje>
          <IndLider>boolean</IndLider>
        </Coaseguros>
      </ocoaseguros>
      <oagentes>
        <Agentes>
          <IdPoliza>int</IdPoliza>
          <IdAgente>int</IdAgente>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Agentes>
        <Agentes>
          <IdPoliza>int</IdPoliza>
          <IdAgente>int</IdAgente>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Agentes>
      </oagentes>
      <ogerencias>
        <Gerencias>
          <IdPoliza>int</IdPoliza>
          <IdGerencia>int</IdGerencia>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Gerencias>
        <Gerencias>
          <IdPoliza>int</IdPoliza>
          <IdGerencia>int</IdGerencia>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Gerencias>
      </ogerencias>
      <oejecutivos>
        <Ejecutivos>
          <IdPoliza>int</IdPoliza>
          <IdEjecutivo>int</IdEjecutivo>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Ejecutivos>
        <Ejecutivos>
          <IdPoliza>int</IdPoliza>
          <IdEjecutivo>int</IdEjecutivo>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Ejecutivos>
      </oejecutivos>
      <osucursales>
        <Sucursales>
          <IdPoliza>int</IdPoliza>
          <IdSucursal>int</IdSucursal>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Sucursales>
        <Sucursales>
          <IdPoliza>int</IdPoliza>
          <IdSucursal>int</IdSucursal>
          <Porcentaje>decimal</Porcentaje>
          <IndicadorPrincipal>boolean</IndicadorPrincipal>
        </Sucursales>
      </osucursales>
    </CrearPoliza>
  </soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Body>
    <CrearPolizaResponse xmlns="http://webcidsa/sias/WSLibrary/WServiceCum">
      <CrearPolizaResult>
        <Id>long</Id>
        <IdBien>long</IdBien>
        <Mensaje>string</Mensaje>
      </CrearPolizaResult>
    </CrearPolizaResponse>
  </soap12:Body>
</soap12:Envelope>

 

 

 

 

back to top