La operación Inicio por defecto (Default init): 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 dar un contexto
inicial a los usuario que no se han registrado y por tanto asignarle un modelo de arquitectura por defecto.
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 crear un usuario anónimo y asignarle un
modelo de arquitectura Concreto(CAM) y del DMM (módulo de Visualización de Componentes) para obtener el propio modelo del CAM anónimo.
El método llama a las tres operaciones descriptas en varios de estos Web Services; CreateUser, Login e Inituserarchitecture. Así, crea un usuarios anónimo, inicia la sesión con ese nuevo usuario anónimo y además le asigna su modelo
por defecto.
La operación devuelve como respuesta una estructura con una variable que indica si el inicio ha tenido éxito, el Identificador de usuario anónimo, la lista de componentes por defecto para el usuario anónimo y un mensaje correspondiente
a la operación realizada.
defaultInit();
Sin Parámetros de Entrada |
Valores de Salida |
result |
structure con los valores de salida:
boolean |
init |
true si tiene éxito la creación del usuario anónimo y la obtención de su modelo por defecto. |
string |
anonimousId |
Texto con el identificador de usuario anónimo en la BD, devuelve la cadena -1 si hay algún error. Este identificador es único y está formado por una cadena de texto que contiene la cadena anonimous, más la fecha y hora del sistema con una precisión de milisegundos. |
list structure |
componentData |
Lista de componentes del modelo concreto para ese usuario anónimo.
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:defaultInit/>
</soapenv:Body>
</soapenv:Envelope>
Ejemplo Respuesta XML
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:defaultInitResponse xmlns:ns2="http://ws.cos.acg.ual.es/">
<result>
<init> "ejemplo true o false" </init>
<anonimousId> "anonimous-fecha-hora" </anonimousId>
<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:defaultInitResponse>
</soap:Body>
</soap:Envelope>
Mensajes de Error |
Internal Server Error
|
Se producen por fallos en el servidor al aplicar algoritmos de encriptación o al buscar alguna clase necesaria para la ejecución.
|
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.
|
Example Error Response XML
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns2:defaultInitResponse xmlns:ns2="http://ws.cos.acg.ual.es/">
<result>
<init> false </init>
<anonimousId> -1 </anonimousId>
<message> > org.postgresql.util.PSQLException: ERROR: no existe la relación «coscoreuser» Position: 13 </message>
</result>
</ns2:defaultInitResponse>
</soap:Body>
</soap:Envelope>
>