Está en la página 1de 17

SERVICIOS WEB SOAP

Portal Mayores trabaja continuamente en la


aplicación de nuevas ideas, conceptos, pro-
ductos, servicios y prácticas tecnológicas con
el objetivo de ser útil, estar en la vanguardia
tecnológica y ofrecer valor y calidad.

Descripción de los Servicios


Web de Portal Mayores

0. Introducción

1. Definición de servicios WSDL

1.1 Servicio Web "Consulta de Recursos"


1.2 Servicio Web “Consulta de Legislación”
1.3 Servicio Web "Consulta de Proyectos"
1.4 Servicio Web “Consulta de Bibliografía”
1.5 Servicio Web “Consulta de Agenda”
1.6 Servicio Web “Consulta de Programas”

2. Ejemplo de cliente java

Febrero 2011
Descripción de los Servicios Web de Portal Mayores

0. INTRODUCCIÓN
El presente documento constituye la descripción técnica de los Servicios Web de Portal Mayores, cuya
finalidad es promover el acceso a la información sobre Gerontología y Geriatría de Portal Mayores. La
documentación contiene la descripción funcional y de interface, detallando los parámetros de entrada y
salida de cada una de las funciones. El conocimiento de estas funciones y su interface permite integrar
en terceras aplicaciones funcionalidades de consulta de nuestras bases de datos a través de Internet.
El término WebServices o Servicios Web engloba una serie de tecnologías que permiten el diálogo
de unos sistemas con otros utilizando los propios recursos de comunicación que ofrece Internet. Los
WebServices son uno de los ejemplos recientes de lo que ha dado en denominarse arquitecturas orien-
tadas a servicios, y constituyen uno de los pilares de la Web 2.0, para conseguir que no sólo los datos
sino también muchos tipos de operaciones puedan procesarse de forma distribuida, promoviendo así una
mayor participación y transparencia en la creación de contenidos por parte de usuarios y desarrolladores.
Algunas de las especificaciones públicas más utilizadas para implementar WebServices son CORBA,
XML-RPC, SOAP y, más recientemente, REST. Portal Mayores ofrece su WebService en SOAP 1.1.

Portal Mayores acerca el uso de Internet y


la información sobre personas mayores
a toda la sociedad
SOAP (acrónimo del ingés Simple Object Access Protocol) es un protocolo que funciona a su
vez sobre el protocolo HTTP y permite que aplicaciones remotas se comuniquen mediante el en-
vío de paquetes de información XML. Esto significa la posibilidad de integrar sistemas dispa-
res con un grado bajo de acoplamiento. SOAP se diferencia de otros protocolos basados en XML
en que permite el intercambio de estructuras complejas de datos (clases) ya que es capaz de in-
formar a priori al cliente del esquema y los tipos constituyentes de dichas estructuras (metada-
tos). Todo servicio SOAP debe proporcionar un punto de enlace en forma de dirección URL.
Es habitual que dicha URL referencie la especificación del servicio, que normalmente es un do-
cumento XML con extensión WSDL (acrónimo del inglés Web Services Description Langua-
ge) también denominado esquema del servicio. El esquema suele ser público y cumple una función
contractual entre el proveedor y el cliente, es decir, constituye el mecanismo mediante el cual el pro-
veedor informa a los potenciales clientes de qué operaciones o métodos están disponibles, qué utili-
dad tienen, cuales son lo parámetros de cada método y qué tipo de datos devuelven. Por tanto pode-
mos definir un WebService SOAP como un conjunto de WebMethods de especificación conocida que
un cliente puede invocar de forma asíncrona mediante una solicitud XML (Request) para obtener un
resultado (Response) también XML cuya estructura acompaña al propio cuerpo del mensaje.
Los Servicios Web de Portal Mayores están desarrollados en Java sobre plataforma J2EE-Spring, y se
ejecutan en el propio contenedor web Linux de Portal Mayores (Tomcat). Portal Mayores WS puede resultar
de gran utilidad a cualquier desarrollador de sistemas corporativos que desee integrar datos sobre Geron-
tología y Geriatría de forma transparente en la lógica del sitio web o la aplicación que esté realizando.

3|
2|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Los servicios de Portal Mayores son los siguientes:

- pmRecWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Residencias.
El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmRecWS.wsdl

- pmBiblioWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Bibliografía. El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmBiblioWS.wsdl

- pmEvenWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Agenda y Cursos.
El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmEvenWS.wsdl

- pmLegWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Legislación.
El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmLegWS.wsdl

- pmProgWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Programas.
El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmProgWS.wsdl

- pmProyWS es la denominación del WebService SOAP de Portal Mayores para la búsqueda de


Proyectos.
El punto de enlace al esquema del servicio es:

http://portalmayores.es/service/pmProyWS.wsdl

3|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

1. Definición de Servicios WSDL

1.1 Servicio Web "Consulta de RESIDENCIAS"

- Operación "residencia"

a) Descripción funcional

Permite realizar diferentes tipos de consulta de residencias en función de los parámetros de entrada.

b) Estructura de datos de entrada

Nombre Tipo
residenciaRequest Objeto que contiene la consulta

requestContent Los datos de consulta

A continuación se especifica requestContent:

Nombre Tipo Valores


denominacion string El nombre o parte del nombre de residencia: “Resi-
dència Nova Vida”, “Nova Vida”, etc
cp string El código postal de la zona en que se encuentra la
residencia
municipio string Nombre del Municipio: “Roses”, “Alcobendas”, etc
provincia string Nombre de la provincia: “Madrid”
ccaa string Nombre de la comunidad autónoma: “Andalucía”
gestion string Nombre del gestor: “Adavir”, etc
tipologia Int Los valores válidos son:
1: corresponde a “Asistidos”
2: corresponde a “Mixta”
3: corresponde a “Otro tipo”
4: corresponde a “Válidos”

Nota: se admiten también valores en minúsculas y sin


tildes
titularidad Int Los valores válidos son:
1: corresponde a privada
2: corresponde a “Privada sin fin de lucro” 2: corres-
ponde a “Privada sin fin de lucro”
3: corresponde a “Pública estatal”
4: corresponde a “Pública autonómica”
5: corresponde a “Pública local”

Nota: se admiten tambien valores en minúsculas y sin


tildes
servicios string Nombre del servicio

5|
4|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

c) Estructura de datos de salida

Nombre Tipo
resiResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros:

Nombre Descripción Tipo


denominacion El nombre completo de la residencia String
direccion La dirección de la residencia String
cp El código postal de la residencia String
municipio El municipio de la residencia String
provincia La provincia de la residencia String
ccaa La comunidad autónoma de la residencia String
telefono El teléfono de la residencia String
fax El fax de la residencia String
email El email de la residencia String
web La web de la residencia String
gestion El nombre del gestor de la residencia String
tipologia El tipo de residencia String
titularidad La titularidad de la residencia String
plazas Las plazas de la residencia String
servicios Listado de los servicios de la residencia String
actualizacion Fecha de la última actualización de los datos de la residencia String

d) Ejemplo de consulta SOAPUI

<soapenv:Envelope
xmlns:soapenv = “http://schemas.xmlsoap.org/soap/envelope/”
xmlns:sch = “http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:residenciaRequest>
<sch:requestContent>
<sch:denominacion>Ballesol</sch:denominacion>
<sch:cp></sch:cp>
<sch:municipio></sch:municipio>
<sch:provincia></sch:provincia>
<sch:ccaa></sch:ccaa>
<sch:gestion></sch:gestion>
<sch:tipologia></sch:tipologia>
<sch:titularidad></sch:titularidad>
<sch:plazas></sch:plazas>
<sch:servicios></sch:servicios>
</sch:requestContent>
</sch:residenciaRequest>
</soapenv:Body>
</soapenv:Envelope>

5|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

1.2 Servicio Web "Consulta de Legislación"

- Operación “ley”

a) Descripción funcional

Permite realizar diferentes tipos de consulta de leyes relacionadas con Gerontología y Geriatría en función de los
parámetros de entrada.

b) Estructura de datos de Entrada

Nombre Tipo
leyRequest Objeto que contiene la consulta
requestContent Los datos de consulta

A continuación se especifica requestContent:

Nombre Tipo Valores


titulo String El título de la norma
boletin String Las siglas del boletín en que se ha publicado la norma (BOE,
BOJA, DOCM, etc
ambito String Valores posibles:
-“Autonómico”
-“Provincial”
-“Municipal”
-“Internacional”
-“Comunitario”
-“Estatal”
-“Comarcal”
Nota: se admiten tambien valores en minúsculas y sin tildes
ccaa String Comunidad autónoma que ha generado la norma
descriptor String Descriptores asociados a la norma
organismo String Nombre del organismo que crea la norma
anyo1 Int Limite inferior para la búsqueda por años
anyo2 Int Limite superior para la búsqueda por años
rango String El rango de la norma. Valores posibles:
- “Acuerdo”
- “Acuerdo Marco”
- “Anteproyecto de Ley”
- “Anuncio”
- “Comparecencia”
- “Constitución”
- “Convenio”
- “Corrección de errores”
- “Decisión UE”
- “Declaración UE”
- “Decreto”
- “Decreto Autonómico”

7|
6|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Valores


- “Decreto Foral”
- “Decreto Legislativo Autonómico”
- “Decretos Municipales”
- “Dictamen UE”
- “Directiva UE”
- “Instrucción”
- “Instrumento de Ratificación2
- “Ley”
- “Ley Autonómica”
- “Ley Foral2
- “Ley Orgánica”
- “Norma Foral”
- “Orden Autonómica”
- “Orden Foral”
- “Orden Ministerial”
- “Ordenanzas Municipales”
- “Otras Disposiciones Autonómicas”
- “Otras Disposiciones Estatales”
- “Otras Disposiciones UE”
- “Proyecto de Ley”
- “Real Decreto”
- “Real Decreto Legislativo”
- “Real Decreto Ley”
- “Recomendación de Organización Internacional”
- “Recomendación UE”
- “Reglamento”
- “Reglamento UE”
- “Resolución”
- “Resolución Autonómica”
- “Resolución de Organización Internacional”
- “Resolución UE”
- “Tratado o Convenio Internacional”

c) Estructura de datos de salida

Nombre Tipo
leyResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros

Nombre Descripción Tipo


titulo El título de la norma String
boletin El nombre del boletín en que se ha publicado la String
norma
numboletin El número del boletín en que se ha publicado la String
norma
fechadisposicion Fecha de disposición de la norma String
fechapublicacion Fecha de publicación de la norma String
ambito Ámbito de la norma String

7|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Descripción Tipo


rango Rango de la norma String
numnorma Número de la norma String
clasificacion Clasificación de la norma String
descriptores Descriptores de la norma String
ccaa Comunidad autónoma, si procede String
resumen Resumen del contenido de la norma String
nota Nota de la norma, si procede String

d) Ejemplo de consulta SOAPUI

<soapenv:Envelope
xmlns:soapenv = “http://schemas.xmlsoap.org/soap/envelope/”
xmlns:sch = “http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:leyRequest>
<sch:requestContent>
<sch:titulo></sch:titulo>
<sch:boletin></sch:boletin>
<sch:ambito></sch:ambito>
<sch:ccaa></sch:ccaa>
<sch:descriptor></sch:descriptor>
<sch:organismo></sch:organismo>
<sch:rango></sch:rango>
<sch:anyo1>2008</sch:anyo1>
<sch:anyo2>2010</sch:anyo2>
</sch:requestContent>
</sch:leyRequest>
</soapenv:Body>
</soapenv:Envelope>

1.3 Servicio Web “Consulta de Proyectos”

- Operación “proyecto”

a) Descripción funcional

Permite realizar diferentes tipos de consulta de proyectos de investigación relacionadas con Gerontología y Geria-
tría en función de los parámetros de entrada.

b) Estructura de datos de Entrada

Nombre Tipo
proyectoRequest Objeto que contiene la consulta
requestContent Los datos de consulta

A continuación se especifica requestContent:

9|
8|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Valores


anyo Int Año comprendido entre el inicio y el final del proyecto
centro String Nombre del centro pricipal asociado al proyecto
ccaa String Nombre de la comunidad autónoma: “Andalucía”
descriptor String Nombre del descriptor: “Trastornos de la memoria”
investigador Int Nombre de investigador del proyecto
resumen Int Palabras que aparezcan en el resumen
denominación String Nombre del proyecto
areatematica String Nombre de alguna area temática del proyecto

c) Estructura de datos de Salida

Nombre Tipo
proyResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros

Nombre Tipo Descripción Valores


anyocomienzo Int Año de comienzo del proyecto 2010
anyofinal Int Año de final del proyecto 2013
descriptores String Descriptores del proyecto “Cuidadores; Enfermedad de Alzhe-
imer; Estrés; Programas; Demen-
cia; Intervención social
financiadora String Entidad financiadora del proyecto “Ministerio de Ciencia e Innovación
(PSI2009-08132)”
resumen String Investigadores asociados al proyecto “Javier López Martínez; María
Márquez González; Andrés Losada
Baltar; Rosa Romero Moreno; Nuria
Anaya Reig; Miguel Costa Cabani-
llas”
titulo String Resumen del proyecto “A través de este proyecto se
pretende evaluar la eficacia de dos
intervenciones para cuidadores
familiares de personas con demen-
cia, una de Terapia de Aceptación
y Compromiso (ACT) desarrollada
para cuidadores (Márquez-Gon-
zález, Romero-Moreno y Losada,
2010) y otra de Terapia Cognitivo
Conductual (Losada, Montorio, Izal
y Márquez-González, 2006). Ambas
intervenciones serán comparadas
con un grupo control.”

9|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Descripción Valores


tipologia String Título del proyecto “Terapia de Aceptación y Compro-
miso vs. Terapia Cognitivo-Conduc-
tual para cuidadores: análisis de
su eficacia en función de su perfil
cognitivo-emocional”
investigadores String Investigadores asociados al proyecto “Javier López Martínez; María Már-
quez González”

d) Ejemplo de consulta SOAPUI

<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:sch=”http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:proyectoRequest>
<sch:requestContent>
<sch:anyo>2010</sch:anyo>
<sch:centro></sch:centro>
<sch:ccaa></sch:ccaa>
<sch:descriptor></sch:descriptor>
<sch:investigador></sch:investigador>
<sch:resumen></sch:resumen>
<sch:denominacion></sch:denominacion>
<sch:areatematica></sch:areatematica>
</sch:requestContent>
</sch:proyectoRequest>
</soapenv:Body>
</soapenv:Envelope>

1.4 Servicio Web “Consulta de Bibliografía”

- Operación “biblio”

a) Descripción funcional

Permite realizar diferentes tipos de consulta de bibliografía y documentos relacionadas con Gerontología y Geria-
tría en función de los parámetros de entrada.

b) Estructura de datos de Entrada

Nombre Tipo
biblioRequest Objeto que contiene la consulta
requestContent Los datos de consulta

A continuación se especifica requestContent:

Nombre Tipo Valores


autor String Autor de la obra
titulo String Título de la obra
descriptor String Descriptores asociados a la obra

11|
10|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Valores


revista String Nombre de la revista
tipodocumento String Tipo de documento
anyoini Int Año inferior del rango temporal
anyofin Int Año superior del rango temporal

c) Estructura de datos de Salida

Nombre Tipo
biblioResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros:

Nombre Tipo Descripción Valores


titulo String Título de la obra “El envejecer caracteriza las perspectivas
demográficas de las sociedades europeas”
tituloorig String Título original de la obra
tituloingles String Título en inglés de la obra “Ageing characterises the demographic
perspectives of the European societies”
idioma String Idioma de la obra Español
idiomasec String Idioma secundario de la obra
editor String Editor de la obra
revtitulo String Título de la revista (si proce- “Anales de medicina interna”
de)
revissn String ISSN de la revista (si procede) “1130-6882”
revurl String URL de la revista (si procede) “http://www.csic.es/publica/revistas/estu-
dios_geograficos.html”
numero Int Número de la revista (si pro- 210
cede)
volumen Int Volumen de la revista (si pro- 54
cede)
pagina String Página “5-17”
isbn String Isbn “84-9769-005-2”
tipodocumento String Tipo de documento: Informe
- Actas de congresos
- Artículo de monografía
- Artículo de revista
- Informe
- Libro
- Tesis Doctoral
autores String Autores de la obra “Abellán García, Antonio; Rojo Pérez, Fer-
mina”
descriptores String Descriptores de la obra “Sistema de pensiones; Protección social;
Datos estadísticos”

11|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

d) Ejemplo de consulta SOAPUI

<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:sch=”http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:biblioRequest>
<sch:requestContent>
<sch:autor>Abellan</sch:autor>
<sch:titulo></sch:titulo>
<sch:descriptor></sch:descriptor>
<sch:clasificacion></sch:clasificacion>
<sch:revista></sch:revista>
<sch:tipodocumento></sch:tipodocumento>
<sch:anyoini></sch:anyoini>
<sch:anyofin></sch:anyofin>
</sch:requestContent>
</sch:biblioRequest>
</soapenv:Body>
</soapenv:Envelope>

1.5 Servicio Web “Consulta de Agenda”

- Operación “Agenda”

a) Descripción funcional

Permite realizar diferentes tipos de consulta de bibliografía y documentos relacionadas con Gerontología y Geria-
tría en función de los parámetros de entrada.

b) Estructura de datos de Entrada

Nombre Tipo
evenRequest Objeto que contiene la consulta
requestContent Los datos de consulta

A continuación se especifica requestContent:

Nombre Tipo Valores


anyo String Año en que ocurre el evento o curso
contenido String Descripción del evento o curso
descriptor String Descriptores del evento o curso
lugar String Lugar
tipo String Tipo del evento:
- Cursos
- Congresos
- Becas y Premios
- Ayudas y Subvenciones
organizacion String Organizador del evento
titulo Int Título del evento o curso
comunidad Int Comunidad autónoma donde ocurre el evento

13|
12|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Valores


historico Boolean Indica si se quiere recuperar resultados históricos. Valo-
res:
- TRUE
- FALSE
c) Estructura de datos de Salida

Nombre Tipo
evenResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros:

Nombre Tipo Descripción Valores


titulo String Título del evento “XI Conferencia Nacional de Educación
sobre la Enfermedad de Alzheimer”
contacto String Información de contacto “http://www.alz.org/educationconference/
overview.htm”
organizador String Organizador del evento “Asociación de Alzheimer (Estados Uni-
dos)”
lugar String Lugar del evento “Chicago, Illinois, EE.UU.“
fuente String Fuente de la noticia “IMSERSO”
fechainicio String Fecha del inicio del evento 20/07/2003
fechafin String Fecha de finalización del evento 23/07/2003
descriptor String Desriptores del evento “Educación;Enfermedad de
Alzheimer;Demencia”
d) Ejemplo de consulta SOAPUI

http://portalmayores.es/service/pmEvenWS

<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/envelope/”
xmlns:sch=”http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:evenRequest>
<sch:requestContent>
<sch:anyo></sch:anyo>
<sch:contenido></sch:contenido>
<sch:descriptor></sch:descriptor>
<sch:lugar></sch:lugar>
<sch:tipo></sch:tipo>
<sch:organizacion>Alzheimer</sch:organizacion>
<sch:titulo></sch:titulo>
<sch:comunidad></sch:comunidad>
<sch:historico>TRUE</sch:historico>
</sch:requestContent>
</sch:evenRequest>
</soapenv:Body>
</soapenv:Envelope>

13|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

1.6 Servicio Web “Consulta de Programas”

- Operación “prog”

a) Descripción funcional

Permite realizar diferentes tipos de consulta de programas relacionadas con Gerontología y Geriatría en función
de los parámetros de entrada.

b) Estructura de datos de Entrada

Nombre Tipo
progRequest Objeto que contiene la consulta
requestContent Los datos de consulta

A continuación se especifica requestContent:

Nombre Tipo Valores


titulo String “Adaptaciones Geriátricas.- Ayuntamiento de Madrid”
ccaa String “Madrid (Comunidad de)”
descriptor String Descriptores del evento o curso
entidad String Lugar
materia String “Ayudas”
submateria String “Ayudas técnicas”

c) Estructura de datos de Salida

Nombre Tipo
progResponse Lista de objetos responseContent
responseContent El objeto con los datos de salida

responseContent es un tipo de dato de salida con los siguientes parámetros:

Nombre Tipo Descripción Valores


titulo String Título del programa “Adaptaciones Geriátricas.- Ayuntamiento
de Madrid”
ccaa String Comunidad Autónoma “Madrid (Comunidad de)”

descriptor String Descriptores asociados al pro- “Accesibilidad;Ayudas técnicas;Viviendas


grama adaptadas”
entidad String Entidad responsable “Ayuntamiento de Madrid. Área de Gobier-
no de Empleo y Servicios a la Ciudadanía”
ambito String Ámbito del programa “Municipal”
materia String Materias “Ayudas para permanecer en el propio
domicilio”
submateria String Submaterias “Ayudas técnicas”

15|
14|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

Nombre Tipo Descripción Valores


url String Url del programa http://www.munimadrid.es/portal/site/munimadrid/
menuitem.69f5b7528325ebcc48f549f59fc08a0c/?vgn
extoid=9133b24b36916110VgnVCM1000000b205a0
aRCRD&amp;vgnextchannel=102f43db40317010Vg
nVCM100000dc0ca8c0RCRD

d) Ejemplo de consulta SOAPUI

http://portalmayores.es/service/pmProgWS
<soapenv:Envelope xmlns:soapenv=”http://schemas.xmlsoap.org/soap/en-
velope/” xmlns:sch=”http://portalmayores.es/service/schemas”>
<soapenv:Header/>
<soapenv:Body>
<sch:progRequest>
<sch:requestContent>
<sch:titulo>madrid</sch:titulo>
<sch:ccaa></sch:ccaa>
<sch:provincia></sch:provincia>
<sch:municipio></sch:municipio>
<sch:descriptor></sch:descriptor>
<sch:entidad></sch:entidad>
<sch:materia></sch:materia>
<sch:submateria></sch:submateria>
</sch:requestContent>
</sch:progRequest>
</soapenv:Body>
</soapenv:Envelope>

2. Ejemplo de cliente Java

A continuación adjuntamos como ejemplo el código en Java (los servicios web admiten además otras tecnologías)
que permite invocar el servicio web para obtener residencias por su denominación, municipio o provincia.

2.1 Index.html

<!doctype html public “-//w3c//dtd html 4.0 transitional//en”>


<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html;
charset=iso-8859-1”>
<meta name=”GENERATOR” content=”Mozilla/4.61 [en] (WinNT; I)
[Netscape]”>
<meta name=”Author” content=”Anil K. Vijendran”>
<title>Invocacion de PMRecWS</title>
</head>
<body>
<b><font face=”Arial, Helvetica, sans-serif”><font size=+2>
WS Recursos</font></font></b>
<br>
Este es un ejemplo de un cliente de servicios web de PM en Java
<br>
<FORM METHOD=POST ACTION=”invocador”>
<TABLE BORDER=”1”>

15|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

<TR><TD>Denominacion</TD><TD><INPUT TYPE=TEXT
NAME=denominacion SIZE=20></TD></TR>
<TR><TD>CP</TD><TD>
<INPUT TYPE=TEXT NAME=cp SIZE=20></TD></TR>
<TR><TD>Municipio</TD><TD>
<INPUT TYPE=TEXT NAME=municipio SIZE=20></TD></TR>
<TR><TD>Provincia</TD><TD>
<INPUT TYPE=TEXT NAME=provincia SIZE=20></TD></TR>
</TABLE>
<P><INPUT TYPE=SUBMIT>
</FORM>
</body>
</html>

2.2 Invocador.java

import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author Joaquin Siabra Nov 2010
*/
public class invocador extends HttpServlet {
protected void processRequest(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException
{
response.setContentType( “text/html;charset=UTF-8” );
PrintWriter out = response.getWriter();
try {
out.println( “<html>” );
out.println( “<head>” );
out.println( “<title>Servlet invocador del Web Service PM</title>” );
out.println( “</head>” );
out.println( “<body>” );
out.println( “<h1>Resultado</h1>” );

//creamos los objetos necesarios

es.portalmayores.service.schemas.RecursosService service = new


es.portalmayores.service.schemas.RecursosService();
es.portalmayores.service.schemas.Recursos port =
service.getRecursosPort();
es.portalmayores.service.schemas.ObjectFactory fact = new
es.portalmayores.service.schemas.ObjectFactory();
es.portalmayores.service.schemas.ResidenciaRequest req =
fact.createResidenciaRequest();
es.portalmayores.service.schemas.Type form = fact.createType();

17|
16|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001
Descripción de los Servicios Web de Portal Mayores

//establecemos los valores del formulario

form.setDenominacion(request.getParameter( “denominacion” ));


form.setCp(request.getParameter( “cp” ));
form.setMunicipio(request.getParameter( “municipio” ));
form.setProvincia(request.getParameter( “provincia” ));
req.setRequestContent(form);

//Invocamos el servicio
es.portalmayores.service.schemas.ResidenciaResponse result = port.
residencia(req);

// Construimos la pagina de salidad


List<es.portalmayores.service.schemas.ReturnType> lista =
result.getResponseContent();
if (lista == null) {
out.println( “</br>No se han encontrado” );
} else {
for (es.portalmayores.service.schemas.ReturnType it : lista) {
out.println( “</br>” );
out.println( “Denominacion: “ + it.getDenominacion() + “</br>”
);
out.println( “Direccion: “ + it.getDireccion() + “</br>” );
out.println( “Municipio: “ + it.getMunicipio() + “</br>” );
out.println( “Codigo postal: “ + it.getCp() + “</br>” );
out.println( “Comunidad Autonoma: “ + it.getCcaa() + “</br>” );
out.println( “Email: “ + it.getEmail() + “</br>” );
out.println( “Web: “ + it.getWeb() + “</br>” );
out.println( “Telefono: “ + it.getTelefono() + “</br>” );
out.println( “Fax: “ + it.getFax() + “</br>” );
out.println( “Gestion: “ + it.getGestion() + “</br>” );
out.println( “Titularidad: “ + it.getTitularidad() + “</br>” );
out.println( “Tipologia “ + it.getTipologia() + “</br>” );
}
}
out.println( “</body>” );
out.println( “</html>” );
} catch (Exception ex) {
} finally {
out.close();
}
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse
response)
throws ServletException, IOException {
processRequest(request, response);
}
}

17|
Portal Mayores [http://www.portalmayores.es] Una iniciativa del IMSERSO y del CSIC © 2001

También podría gustarte