WS Publicos

Session Web Service

(descriptor del servicio XML) >
Login
>
Logout
>
Init user architecture
>
Default init

Interaction Web Service

(descriptor del servicio XML) >
Register interaction

Component Web Service

(descriptor del servicio XML) >
Update architecture

Communication Web Service

(descriptor del servicio XML) >
Get links components

WS Privados

User Web Service

(descriptor del servicio XML) >
Query user
>
Create user
>
Delete user
>
Update user
>
Query profile

Manage Architecture Service

(descriptor del servicio XML) >
Export AAM from String
>
Export CAM from String
>
Withdraw CAM

Manage Component Service

(descriptor del servicio XML) >
Export CC from String
>
Export CC from params
>
Withdraw CC

Log de la infraestructura

>
Log del servidor node.js
>
Log Wildfly

Session Web Service > Init user architecture
Ir a probar servicio


La operación Iniciar Arquitectura de Usuario (Init user architecture): está englobada en el Servicio Session Web Service que da soporte a la gestión de las sesiones. Esta operación se emplea con el objetivo de obtener la lista de componentes del usuario.

Este servicio es controlado por el componente COSSessionMM (módulo de Gestión de Sesiones del COSCore) y hace uso de dos módulos del core; el UIM (módulo de Información de Usuarios) para obtener con el id de usuario su camid (identificador del modelo de arquitectura concreta), del DMM (módulo de Visualización de Componentes) para obtener el propio modelo del usuario y del módulo IMM (módulo de Gestión de la interacción) para registrar en la base de datos de interacción de inicio de sesión. El método acepta de entrada una estructura con el Id del usuario que tiene la sesión iniciada, este valor es obligatorio y además no nulo, también se manda información de interacción que solo puede ser proporcionada por el usuario. La operación obtiene el identificador del modelo de arquitectura concreta , obtiene el modelo concreto y devuelve como respuesta una estructura con una variable que indica si el inicio ha tenido éxito o no, la lista de componentes y un mensaje correspondiente a la operación realizada.


initUserArchitecture(structure params);
Parámetros de Entrada
params structure con los parámetros de entrada y el orden a seguir:
string userId Id de usuario con una sesión iniciada en el sistema. Parámetro obligatorio no nulo.
structure interaction structure con los datos de interacción que puede proporcionar el usuario.
string deviceType Tipo de dispositivo desde el que se está accediendo (Browser,Phone,Tablet,TV). Parámetro obligatorio.
string interactionType Tipo de interacción de entrada (MouseKeyboard, Voice, Gestural, Touch). Parámetro obligatorio.
string latitude Latitud, información geográfica que pueda proporcionar el dispositivo. Parámetro obligatorio.
string longitude Longitud, información geográfica que pueda proporcionar el dispositivo. Parámetro obligatorio.

Valores de Salida
result structure con los valores de salida:
boolean init true si tiene éxito la obtención de la lista de componentes para ese usuario, false si no.
list structure componentData Lista de componentes del modelo concreto para ese usuario.
string platform Plataforma a la que está sirviendo: web, java, ...
string componentname Nombre del componente.
string componentAlias Alias de la instancia componente.
string instanceId Instancia del componente.
string codeHTML Código html que incluye el iframe.
string objectJava Objeto serializado.
string jarJava Nombre del archivo jar que contiene el objeto java.
string idHtml Identificador del elemento html en el DOM.
int posx Posición del componente que indica en que columna está.
int posy Posición del componente que indica en que fila está.
int tamanox Tamaño que ocupa a lo ancho.
int tamanoy Tamaño que ocupa a lo alto.
boolean servicio_maximizable Determina si el componente puede verse a pantalla completa.
boolean servicio_agrupable Determina si ese componente puede agrupar servicios.
int numero_servicios número de servicios en este componente.
list structure servicios Lista de servicios en este componente.
string componentname Nombre del componente. Si el servicio es el servicio base coincide con el componentData.componentname
string componentAlias Alias de la instancia componente. Si el servicio es el servicio base coincide con el componentData.componentAlias
string instanceId Instancia del componente. Si el servicio es el servicio base coincide con el componentData.InstanceId
string mapaKML Mapa del servicio OGC cargado.
string capa Capa del servicio OGC cargado.
string message Mensaje de éxito o de error y su tipo.

Ejemplo Petición XML


<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws.cos.acg.ual.es/">
<soapenv:Header/>
<soapenv:Body>
<ws:initUserArchitecture>
<params>
<userId> "ejemplo de Id" </userID>
<interaction>
<deviceType> "ejemplo de dispositivo o vacio" </deviceType>
<interactionType> "ejemplo de tipo de interacción o vacio" </interactionType>
<latitude> "ejemplo de latitud o vacio" </latitude>
<longitude> "ejemplo de longitud o vacio" </longitude>
</interaction>
</params>
</ws:initUserArchitecture>
</soapenv:Body>
</soapenv:Envelope>

Ejemplo Respuesta XML


<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:initUserArchitectureResponse xmlns:ns2="http://ws.cos.acg.ual.es/">
<result>
<init> "ejemplo true o false" </init>
<componentData> "<platform></platform><componentname> ... <capa></capa></servicios>" </componentData>
...
<componentData> "<platform></platform><componentname> ... <capa></capa></servicios>" </componentData>
<message> "ejemplo mensaje de exito o de error" </message>
</result>
</ns2:initUserArchitectureResponse>
</soap:Body>
</soap:Envelope>
Mensajes de Error
Not found o Empty userId Error Se produce cuando se omite este parámetro en la llamada al servicio o no se proporciona un valor.
Not found Interaction Information Error Se produce cuando se omite este parámetro en la llamada al servicio.
PSQLException Se producen por problemas en la conexión a la base de datos.
Error in Architectural Models BD Se producen por problemas en la consulta a la base de datos de modelos de arquitectura.
Error in Wookie Se producen por problemas en la consulta al repositorio Wookie.
Internal Server Error Se producen por fallos en el servidor al buscar alguna clase necesaria para la ejecución.

Example Error Response XML


<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:initUserArchitectureResponse xmlns:ns2="http://ws.cos.acg.ual.es/">
<result>
<init> false </init>
<message> > org.postgresql.util.PSQLException: ERROR: no existe la relación «coscoreuser» Position: 19 </message>
</result>
</ns2:initUserArchitectureResponse>
</soap:Body>
</soap:Envelope>
Probar el Servicio
Rellene Parámetros de Entrada:



Respuesta de Salida obtenida:





>