GovernIB / rolsac

Gestor de continguts administratius
4 stars 1 forks source link

Integració automàtica inventari procediments CAIB - SIA #377

Closed sgelabert-dgtic closed 7 years ago

sgelabert-dgtic commented 7 years ago

Es sol·licita la integració automàtica del catàleg de procediments de la CAIB amb el sistema SIA

sgelabert-dgtic commented 7 years ago

Per altra banda, caldria documentar mínimament la integració, incloent-hi també els valors de la parametrització de les propietats del fitxer jboss-service.xml:

       es.caib.rolsac.sia.tipoActuacion = 1
       es.caib.rolsac.sia.tipologiaTramitacion = 4
       es.caib.rolsac.sia.administracion = 2 ?
           es.caib.rolsac.sia.url = www.caib.es/seucaib/ca/200/persones/tramites/tramite/
       es.caib.rolsac.sia.jobpendientes=0 0 10 * * ?
       es.caib.rolsac.sia.usuario.envio = ********
       es.caib.rolsac.sia.pass.envio = ********
       es.caib.rolsac.sia.url.envio = http://pre-sia2.redsara.es/axis2/services/wsSIAActualizarActuaciones
       es.caib.rolsac.sia.activarEnvio=N
       es.caib.rolsac.sia.centro.level=3    
sgelabert-dgtic commented 7 years ago

Cal eliminar rolsac_update_data_from_1.4.0_to_1.4.1.sql i rolsac_update_schema_from_1.4.0_to_1.4.1.sql del directori /scripts/bbdd/1.4.

Hi ha un error en l'accés a la pantalla SIA del menú d'Administració:

14:18:01,118 ERROR [MessageTag] No message found under code 'txt.sia.envio' for locale 'ca'.
javax.servlet.jsp.JspTagException: No message found under code 'txt.sia.envio' for locale 'ca'.
sgelabert-dgtic commented 7 years ago
sgelabert-dgtic commented 7 years ago

He modificat un procediment ja introduit a SIA i l'he enviat manualment, però ha fallat:

Ha fallado indexando, error no controlado. Mensaje:java.lang.NullPointerException
    at org.ibit.rol.sac.persistence.ejb.SiaPendienteFacadeEJB.obtenerSiaProc(SiaPendienteFacadeEJB.java:536)
    at org.ibit.rol.sac.persistence.ejb.SiaPendienteFacadeEJB.enviar

No genera errors a nivell ERROR a en log de Jboss.

Codi ROLSAC:2074344 Codi SIA:208428

slromero-indra commented 7 years ago

Buenas, el problema se debe porque el procedimiento no tiene materias asociadas. Se ha añadido una comprobación que la variable no sea nula.

Esto es posible porque en la creación de procedimientos, las materias no se incluyen/editan, mientras que aparece y es obligatorio la inclusión de materias cuando está el procedimiento en modo edición.

Ya está subido el cambio.

sgelabert-dgtic commented 7 years ago

El procediment ROLSAC 2074344 té matèries associades. Des del meu punt de vista, els procediments no haurien de passar a pendents SIA fins que no compleixen amb els requeriments per esser bolcats. En aquest cas concret, és cert que te deixa donar d'alta un procediments INTERN sense matèries, però aquest no hauria de passar a pendents SIA fins que sigui PUBLIC.

He fet més proves i cal revisar la inclusió de procediments a la llista de pendents SIA. Per exemple, per què si elimin un procediment no bolcat a SIA passa a la llista de pendents ? Per donar-lo d'alta com inactiu a SIA? Realment és necessari?

slromero-indra commented 7 years ago

Buenas, la idea básica es cualquier cosa que afecte a procedimiento se guarde en pendientes de SIA y ya será la tarea la que evalúe si debe ser o no enviado a SIA. Para el envío hacia SIA, se sigue la siguiente lógica:

update rsc_proced
     set pro_estsia = 'A'
  where pro_codsia is not null
    and pro_estsia is null;

Además, he visto que la línea de código (línea 366 de SiaPendienteFacadeEJB.java) no coincide con la última versión de esta rama. Por favor, cuando puedas despliega de nuevo el proyecto para poder ver si ver mejor el problema.

Saludos!

slromero-indra commented 7 years ago

Buenas, por favor, podéis ejecutar esta consulta en vuestro entorno de pre que tengan código SIA. La consulta obtiene los posibles procedimientos candidatos a volverse a enviar a SIA porque pueden que hayan cambiado su estado:

select *
 from rsc_proced
 where (pro_estsia is not null
   and pro_estsia like 'A'
   and pro_feccad is not null
   and pro_feccad < sysdate
      )
   or
      (
       (pro_estsia is null OR pro_estsia like 'B')
   and (pro_feccad is null OR pro_feccad > sysdate)
   and (pro_fecpub is not null and pro_fecpub < sysdate)
       );
sgelabert-dgtic commented 7 years ago

Enviat per correu

slromero-indra commented 7 years ago

Buenas, se han incluido mejoras y en el task para envío de pendientes a SIA, ahora también revisa si hay procedimientos que hayan cambiado su estado SIA por una cuestión de tiempo, es decir:

Se verán que procedimientos entran en alguno de estos 2 estados, y se evaluará si se tiene que enviar información hacia SIA (alta o baja).

Se ha añadido un nuevo campo en la tabla de job SIA, que indica el tipo de ejecución realizada (se ha añadido en los scripts pero se debería ejecutar en los entornos donde ya se haya ejecutado ya los scripts de SIA):

 ALTER TABLE RSC_SIAJOB ADD SIJ_TIPO VARCHAR2(3);
     COMMENT ON COLUMN RSC_SIAJOB.SIJ_TIPO      IS 'Tipo de ejecución. PDT (pendiente), TOT (Tots) o TMP (Actualización por tiempo)';
sgelabert-dgtic commented 7 years ago

En local i en mode debug he conseguit respota del WS de SIA per actualització del procediment 2978 amb codi SIA 207754. Tot i això dóna error de tipus de dades:

2017-02-03 09:52:51,977 DEBUG [es.caib.rolsac.delegate.interceptor] <- #357 ProcedimientoLocal [id=2978 nombre=Autorització per al lloguer d'embarcacions d'esplai de la UE]
2017-02-03 09:52:51,977 DEBUG [es.caib.rolsac.delegate.interceptor] #358 -> SiaPendienteProcesoDelegateImpl.actualizarSiaPendiente[SiaPendiente [id=1392579, tipo=PROC, idElemento=2978, estado=-1]]
2017-02-03 09:52:51,977 DEBUG [org.ibit.rol.sac.persistence.ejb.HibernateEJB] Actualizar SIA pendiente
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.SessionImpl] opened session
2017-02-03 09:52:51,977 DEBUG [org.ibit.rol.sac.persistence.ejb.HibernateEJB] se ha abierto la sesion: net.sf.hibernate.impl.SessionImpl@154bd3a2
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.SessionImpl] Flushed: 0 insertions, 1 updates, 0 deletions to 1 objects
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.SessionImpl] Flushed: 0 (re)creations, 0 updates, 0 removals to 0 collections
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.Printer] listing entities:
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.Printer] org.ibit.rol.sac.model.SiaPendiente{id=1392579, estado=-1, idSia=null, tipo=PROC, fecAlta=2017-02-03 09:37:30, idElemento=2978, fecIdx=null, mensaje=Ha fallado indexando, error no controlado. Mensaje:java.lang.NumberFormatException: For input string: "3    "
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:492)
    at java., existe=1}
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.SQL] update RSC_SIAPDT set SIP_TIPO=?, SIP_IDELEM=?, SIP_ESTADO=?, SIP_FECALT=?, SIP_FECIDX=?, SIP_MENSA=?, SIP_EXISTE=?, SIP_SIA=? where SIP_ID=?
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.BatcherImpl] Executing batch size: 1
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.BatcherImpl] success of batch update unknown: 0
2017-02-03 09:52:51,977 DEBUG [net.sf.hibernate.impl.SessionImpl] disconnecting session
2017-02-03 09:52:51,977 DEBUG [org.ibit.rol.sac.persistence.ejb.HibernateEJB] Actualizar SIA pendiente OK
slromero-indra commented 7 years ago

Buenas, hemos estado revisando la aplicación y estamos teniendo problemas para conseguir replicar el error, sería interesante volver a ejecutar la indexación SIA del elemento (con editar y guardar el procedimiento se volverá a incorporar en pendientes) para obtener los logs y ver más exactamente el problema.

Igualmente, hemos observado que al ser un valor muy específico (el error se produce al intentar convertir el valor '3 ' a entero). Este error se puede replicar si en el jboss-service.xml se introduce incorrectamente un valor con espacios a continuación.

es.caib.rolsac.sia.centro.level=3

Por favor, podéis ver si en el jboss-service.xml dicha propiedad tiene espacios / tabulaciones al fondo? Además, veremos de modificar la obtención de Long/Integer de valores del jboss-service.xml para que realice un trim. Saludos!

sgelabert-dgtic commented 7 years ago

Efectivament tenia espais al final de la propietat. Per evitar futurs errors convé fer un trim, tal i com indiques. Per altra banda, el procés no ha finalitzat. Apareixen errors de time-out, com en preproducció,

09:05:54,258 DEBUG [Printer] org.ibit.rol.sac.model.SiaPendiente{id=1392603, estado=-1, idSia=null, tipo=PROC, fecAlta=2017-02-07 09:03:06, idElemento=2978, fecIdx=null, mensaje=Ha fallado indexando, error no controlado. Mensaje:AxisFault
 faultCode: {http://xml.apache.org/axis/}HTTP
 faultSubcode: 
 faultString: (504)Gateway Timeout
 faultActor: 
 faultNode: 
 faultDetail: 
    {}:return code:  504
&lt;!DOCTYPE HTML PUBLIC, existe=1}
rsanz-indra commented 7 years ago

No nos queda claro desde dónde se esta realizando la prueba y si se ha podido establecer la conexión con SIA desde el JBoss. El error en todo caso es de conectividad e indica que no se ha podido establecer la conexión indicando un error de proxy. Habría que revisar la conexión desde el entorno que se está ejecutando ¿desde el JBoss que estáis probando se sale con un proxy hacia SIA?

sgelabert-dgtic commented 7 years ago

La prova l'estic fent des del Jboss local (màquina autoritzada a la xarxa SARA i puc veure sense problemes l'especificació del WSDL http://pre-sia2.redsara.es/axis2/services/wsSIAActualizarActuaciones?wsdl).

En el servidor de PREproducció obtenim el mateix error de time-out.

Han monitoritzat la meva màquina i no hi ha peticions de sortida cap a la xarxa SARA. Podeu comprovar que s'estigui emprant realment la property es.caib.rolsac.sia.url.envio ?

Per altra banda el servidor de PREproducció no passa per cap ProxyCAIB.

slromero-indra commented 7 years ago

Buenas, hemos realizado pruebas y hemos visto una manera de ver hacia que url de conexión está utilizando para conectarse a SIA.

Se debe bajar en nivel de log de axis. Se debe configurar el log4j (jboss-log4j.xml) y poner lo siguiente:

<category name="org.apache.axis.transport.http">
      <priority value="DEBUG"/>
   </category> 

De esa manera, la información de nivel DEBUG por axis debería salir por el fichero de server.log y podríamos ver hacia que URL se está conectando.

Si se vuelve a repetir una petición de envío hacia SIA, en el server.log debe salir distinta info sobre el envío (se debería ver muchas trazas asociadas a DEBUG [org.apache.axis.transport.http.HTTPSender] ). En un trozo del envío se puede ver la url POST y la información enviada. Ejemplo:

2017-02-07 18:56:33,156 DEBUG [org.apache.axis.transport.http.HTTPSender] (DefaultQuartzScheduler_Worker-1) POST http://pre-sia2.redsara.es/axis2/services/wsSIAActualizarActuaciones HTTP/1.0 Content-Type: text/xml; charset=utf-8 Accept: application/soap+xml, application/dime, multipart/related, text/* User-Agent: Axis/1.4 Host: pre-sia2.redsara.es Cache-Control: no-cache Pragma: no-cache SOAPAction: "http://www.map.es/sgca/actualizar/actualizarSIA_v3_1" Content-Length: 1860 Proxy-Authorization: Basic Y2FpYmVucmVkOjFuZHJAMTEyMDE1

<?xml version="1.0" encoding="UTF-8"?>WSBALEARESprimeraNNSPNombre del procedimiento xobjeto xA04013600132Dirección General de Participación y Transparencia4www.caib.es/seucaib/ca/200/persones/tramites/tramite/26498202123S1Resolució de 7 de gener de 2008 per la qual s'ordena la publicació del Conveni Marco entre l'Administració General de l'Estat i l'Administració de la Comunitat Autònoma de les Illes Balears per a la implantació d'una xarxa d'Oficines Integrades d'atenció al ciutadà en l'àmbit territorial de les Illes Balears</soapenv:Body></soapenv:Envelope> 2017-02-07 18:56:33,171 DEBUG [org.apache.axis.transport.http.HTTPSender] (DefaultQuartzScheduler_Worker-1) HTTP/1.0 503 Service Unavailable

sgelabert-dgtic commented 7 years ago

Aqui teniu el log d'axis en mode debug:

11:45:12,607 DEBUG [HTTPSender] Enter:  HTTPSender::invoke
11:45:12,865 DEBUG [HTTPSender] XML sent:
11:45:12,865 DEBUG [HTTPSender] ---------------------------------------------------
11:45:12,865 DEBUG [HTTPSender] POST http://pre-sia2.redsara.es/axis2/services/wsSIAActualizarActuaciones HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: pre-sia2.redsara.es
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: "http://www.map.es/sgca/actualizar/actualizarSIA_v3_1"
Content-Length: 1749
Proxy-Authorization: Basic dTEwMjA2ODpmZWluYTEzMQ==

<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><paramSIA xmlns="http://www.map.es/sgca/actualizar/messages/v3_1/ParamSIA"><user>WSBALEARES</user><password>primera</password><ACTUACIONES><ACTUACION CODIGOACTUACION="207754" CODIGOORIGEN="2978" OPERACION="M"><INTERNO>N</INTERNO><ESCOMUN>N</ESCOMUN><ACTIVO>S</ACTIVO><TIPOTRAMITE/><DENOMINACION>Autorizaci&#xF3;n para el alquiler de embarcaciones de recreo de la UE</DENOMINACION><DESCRIPCION>Los propietarios de embarcaciones de esparcimiento de la UE que quieran explotarlas comercialmente mediante el alquiler a terceras personas, tienen que solicitar la correspondiente autorizaci&#xF3;n a la Direcci&#xF3;n General de Puertos y Aeropuertos</DESCRIPCION><ORGANISMORESPONSABLE><CODORGANISMORESPONSABLEN1>A04013577</CODORGANISMORESPONSABLEN1></ORGANISMORESPONSABLE><DESTINATARIOS><DESTINATARIO><CODDESTINATARIO>1</CODDESTINATARIO></DESTINATARIO></DESTINATARIOS><UNIDADGESTORATRAMITE>Direcci&#xF3;n General de Puertos y Aeropuertos</UNIDADGESTORATRAMITE><CODNIVELADMINISTRACIONELECTRONICA>1</CODNIVELADMINISTRACIONELECTRONICA><ENLACEWEB>https://appsproves.caib.es/seucaib/es/tramites/tramite/2978</ENLACEWEB><MATERIAS><MATERIA><CODMATERIA>38</CODMATERIA></MATERIA></MATERIAS><FINVIA>N</FINVIA><NORMATIVAS><NORMATIVA><CODRANGO>11</CODRANGO><TITULO>Orden del Consejero de Movilidad y Ordenaci&#xF3;n del Territorio de 25 de octubre de 2007, por la que se regula la actividad de arrendamiento de embarcaciones de recreo</TITULO></NORMATIVA></NORMATIVAS></ACTUACION></ACTUACIONES></paramSIA></soapenv:Body></soapenv:Envelope>
11:47:42,954 DEBUG [HTTPSender] HTTP/1.0 504 Gateway Timeout
11:47:42,954 DEBUG [HTTPSender] Mime-Version 1.0
11:47:42,954 DEBUG [HTTPSender] Date Fri, 10 Feb 2017 11:47:42 CET
11:47:42,954 DEBUG [HTTPSender] Content-Type text/html
11:47:42,954 DEBUG [HTTPSender] Connection close
11:47:42,955 DEBUG [HTTPSender] Proxy-Connection close
11:47:42,955 DEBUG [HTTPSender] Content-Length 1970
11:47:42,971 DEBUG [HTTPSender] (504)Gateway Timeout
11:47:42,977 DEBUG [interceptor] #165 -> SiaPendienteProcesoDelegateImpl.actualizarSiaPendiente[SiaPendiente [id=1392618, tipo=PROC, idElemento=2978, estado=-1]]
11:47:42,978 DEBUG [HibernateEJB] Actualizar SIA pendiente
11:47:42,978 DEBUG [SessionImpl] opened session
rsanz-indra commented 7 years ago

Se está intentando realizar la petición y da un error de conexión (la url del servicio es correcta). Habría que ver que pasa a nivel de conectividad desde esa máquina y/o desde el jboss. ¿Podéis pasarnos el script de arranque del jboss? Una prueba que se puede hacer desde la máquina que se ha lanzado esa prueba es coger la petición soap que sale en el log y lanzarla con el soapui a ver si se realiza.

sgelabert-dgtic commented 7 years ago

Ja està. he obtingut resposta en local (tenia el Jboss configurat per sortir pel proxy i des d'aquest darrer no hi havia conntectivitat a la xarxa SARA).

13:05:21,654 DEBUG [interceptor] <- #192 Tramite [id=123, codiVuds=null, descCodiVuds=null, validacio=1, dataActualitzaci?=2012-06-05 09:53:05.0, dataCaducitat=null, dataPublicacio=null, fase=1, organCompetent=UnidadAdministrativa [id=142752, nombre=Direcció General de Ports i Aeroports.], procedimiento=2978, idTraTel=null, versio=null, traduccion=TraduccionTramite [observaciones=null, documentacion=· Instància de sol·licitud d'autorització
· Original i fotocòpia del justificant del registre i propietat de l'embarcaciò.
· IAE corresponent a l'activitat (epí­graf 855.2), en vigor.
· Assegurança de responsabilitat civil i assegurança que cobreixi  a les persones embarcades, en vigor.
· Original i fotocòpia del DNI o passaport en cas de persones fí­siques, NIF i escriptura de constituciò de la societat en cas de persones jurí­diques.
· Contracte de fletament, si és el cas.
· Justificant del pagament de la taxa corresponent. , nombre=Autorització per al lloguer d'embarcacions d'esplai de la UE, observaciones=null, plazos=null]]
13:05:21,670 DEBUG [HTTPSender] Enter:  HTTPSender::invoke
13:05:21,692 DEBUG [HTTPSender] XML sent:
13:05:21,692 DEBUG [HTTPSender] ---------------------------------------------------
13:05:21,692 DEBUG [HTTPSender] POST /axis2/services/wsSIAActualizarActuaciones HTTP/1.0
Content-Type: text/xml; charset=utf-8
Accept: application/soap+xml, application/dime, multipart/related, text/*
User-Agent: Axis/1.4
Host: pre-sia2.redsara.es
Cache-Control: no-cache
Pragma: no-cache
SOAPAction: "http://www.map.es/sgca/actualizar/actualizarSIA_v3_1"
Content-Length: 1751

<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><soapenv:Body><paramSIA xmlns="http://www.map.es/sgca/actualizar/messages/v3_1/ParamSIA"><user>WSBALEARES</user><password>primera</password><ACTUACIONES><ACTUACION CODIGOACTUACION="207754" CODIGOORIGEN="2978" OPERACION="M"><INTERNO>N</INTERNO><ESCOMUN>N</ESCOMUN><ACTIVO>S</ACTIVO><TIPOTRAMITE/><DENOMINACION>Autorizaci&#xF3;n para el alquiler de embarcaciones de recreo de la UE</DENOMINACION><DESCRIPCION>Los propietarios de embarcaciones de esparcimiento de la UE que quieran explotarlas comercialmente mediante el alquiler a terceras personas, tienen que solicitar la correspondiente autorizaci&#xF3;n a la Direcci&#xF3;n General de Puertos y Aeropuertos *</DESCRIPCION><ORGANISMORESPONSABLE><CODORGANISMORESPONSABLEN1>A04013577</CODORGANISMORESPONSABLEN1></ORGANISMORESPONSABLE><DESTINATARIOS><DESTINATARIO><CODDESTINATARIO>1</CODDESTINATARIO></DESTINATARIO></DESTINATARIOS><UNIDADGESTORATRAMITE>Direcci&#xF3;n General de Puertos y Aeropuertos</UNIDADGESTORATRAMITE><CODNIVELADMINISTRACIONELECTRONICA>1</CODNIVELADMINISTRACIONELECTRONICA><ENLACEWEB>https://appsproves.caib.es/seucaib/es/tramites/tramite/2978</ENLACEWEB><MATERIAS><MATERIA><CODMATERIA>38</CODMATERIA></MATERIA></MATERIAS><FINVIA>N</FINVIA><NORMATIVAS><NORMATIVA><CODRANGO>11</CODRANGO><TITULO>Orden del Consejero de Movilidad y Ordenaci&#xF3;n del Territorio de 25 de octubre de 2007, por la que se regula la actividad de arrendamiento de embarcaciones de recreo</TITULO></NORMATIVA></NORMATIVAS></ACTUACION></ACTUACIONES></paramSIA></soapenv:Body></soapenv:Envelope>
13:05:22,438 DEBUG [HTTPSender] HTTP/1.1 200 OK
13:05:22,438 DEBUG [HTTPSender] Date Tue, 14 Feb 2017 12:05:21 GMT
13:05:22,438 DEBUG [HTTPSender] Server Apache
13:05:22,438 DEBUG [HTTPSender] X-Powered-By Servlet 2.5; JBoss-5.0/JBossWeb-2.1
13:05:22,438 DEBUG [HTTPSender] Connection close
13:05:22,438 DEBUG [HTTPSender] Content-Type text/xml;charset=utf-8
13:05:22,438 DEBUG [HTTPSender] 
no Content-Length
13:05:22,438 DEBUG [HTTPSender] 
XML received:
13:05:22,438 DEBUG [HTTPSender] -----------------------------------------------
13:05:22,441 DEBUG [HTTPSender] <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns4:enviaSIA xmlns:ns4="http://www.map.es/sgca/actualizar/messages/v3_1/EnviaSIA"><ns4:ACTUACIONES><ns4:ACTUACION CODIGOORIGEN="2978" OPERACION="M" CODIGOACTUACION="207754"><ns4:CORRECTO>S</ns4:CORRECTO><ns4:ERRORES/></ns4:ACTUACION></ns4:ACTUACIONES></ns4:enviaSIA></soapenv:Body></soapenv:Envelope>
13:05:22,441 DEBUG [HTTPSender] Exit:  HTTPDispatchHandler::invoke

Malgrat la resposta és correcte, veig que les dades a SIA-PRE no s'han actualitzat. Us consta que emprin actualització diferida ?

rsanz-indra commented 7 years ago

Se aclaró el misterio :)

Respecto al tema de la visualización de datos desde SIA fue lo que comentamos que no teníamos forma de verificar esos datos. Deberás consultarlo con soporte de SIA.

slromero-indra commented 7 years ago

Con los nuevos cambios se incluye el id del departamento. Se ha añadido el id del departamento, hay que poner este campo en el jboss-service.xml de rolsac:

es.caib.rolsac.sia.departamento=A04003003

Saludos!

rsanz-indra commented 7 years ago

Hay que ver como acoplar el funcionamiento multientidad de Rolsac con la integración con SIA. Entendemos que el funcionamiento correcto debería ser:

La DGDT verificará este tema con la fundación BIT.

sgelabert-dgtic commented 7 years ago

Estam fent proves unitàries i automàtiques d'integració ROLSAC-SIA. Resultat: Proves unitàries:

Proves actualització completes:

Correccions ortogràfiques sobre la pantalla: Desitja manar de nou tota la informació dels procediments de SIA -->Bolcar complet procediments dins SIA Envio de procediments que han cambiat d'estat per temp. --> Actualitzar procediments bolcats dins SIA Desitja tancar tots el jobs sense tancar --> Tancar jobs pendents sense finalitzar Envio dades SIA pendent --> Enviament pendents SIA Trobades 20 envios sia. --> Trobats 20 enviaments SIA pendents Envio dades a SIA --> Enviar dades a SIA

rsanz-indra commented 7 years ago

Revisamos las incidencias de integración y os decimos algo.

Respecto a SIA y multientidad tras consultar a SIA se indica que el usuario de WS es para una determinada entidad. Según lo que se especificaba en anterior comentario hay que decidir la forma de indicar las entidades raíz a integrar con SIA y el usuario WS a usar. Las 2 opciones serían especificar esta información mediante el fichero de propiedades (jboss-service.xml) o modificar las pantalla de UA para que en la raíz se puedan especificar estos datos. Quedamos a la espera de que nos confirméis como proceder.

slromero-indra commented 7 years ago

Las opciones que aparecen en la pantalla para lanzar la integración con SIA son:

sgelabert-dgtic commented 7 years ago

Corregeix-ho literal primera opció "Bolcat complet de procediments dins SIA" Pel que fa a la segona opció no faria falta. De totes formes, ja que esta disponible ens podria servir per testejar l'actualització de procediments caducats o pendents de publicació. Funciona?

rsanz-indra commented 7 years ago

La segunda opción funciona. La introducimos para verificar exclusivamente esa parte de la funcionalidad sin esperar al proceso diario. En caso de que queráis que se mantenga, hay que ver que literal ponemos (p.e. "Revisar procedimientos caducados o pendientes de publicación"). Si veis que no aporta nada, la eliminamos.

sgelabert-dgtic commented 7 years ago

He tornat a fer proves unitàries d'integració ROLSAC-SIA. Us pas un exemple d'un procediment donat d'alta des de zero a ROLSAC dia 14/03/2017, bolcat a SIA el mateix dia i amb ID Departament correcte ("Govern Illes Balears"), però que no es pot actualitzar. Adjunt log de la petició (log.txt) i captures de pantalla (captures.pdf).

sgelabert-dgtic commented 7 years ago

He fet una prova de bolcat complet i tampoc acaba d'anar bé. Adjunt captura de pantalla (capturaBolcat.pdf) i log (log-bocat-complet.txt)

rsanz-indra commented 7 years ago

Debe haber un error al actualizar los datos en Rolsac tras enviar a SIA, ya que se está intentando hacer de nuevo un alta en SIA. Lo revisamos para ver que está pasando. ¿Tenéis el log del día 14/03? Entendemos que los datos de PRE al ser una copia de PRO, tienen actualizados los datos de SIA que se dieron de alta manualmente con el excel, ¿es correcto?

sgelabert-dgtic commented 7 years ago

Adjunt logs: 17/03/2017 http://tn.caib.es/WcrwTtJD 14/03/2017 http://tn.caib.es/kp8r3WCd Respecte a les dades de PREproducció, efectivament són còpia de les de PROducció i tenen actualitzat el codi SIA que ens varen retornar després del bolcat incial. Cal tenir en compte però, que al tractar-se d'un entorn de testeig en alguns casos les dades poden haver caviat.

slromero-indra commented 7 years ago

Buenas, estamos revisando el proceso de ejecución a SIA y tenemos una duda, en la issue el 24 de enero se indicó que se ejecutara la siguiente instrucción, se ejecutó al final?

update rsc_proced
     set pro_estsia = 'A'
  where pro_codsia is not null
    and pro_estsia is null;
slromero-indra commented 7 years ago

Buenas, también tenemos otras dudas:

sgelabert-dgtic commented 7 years ago

Respecte a l'script d'actualització, us confirm que és va executar sobre l'entorn de PREproducció dia 25/01/2017:

ROLSAC@pre11g2> @rolsac-dml-v1.5.1.sql 659 filas actualizadas.

Pel que fa a la versió de l'aplicació, llevat dels canvis sobre els literal, no em consten canvis posteriors a dia 07/03/2017. (Evidentment llevat de la millora d'avui que acabes de commitar).

Respecte als IDs SIA, ho comprovaré i us dic coses

slromero-indra commented 7 years ago

Buenas, cuando podáis, por favor, podéis ejecutar las siguientes dos sentencias SQL para realizar un análisis de los datos.

SELECT COUNT(*) PROCEDIMIENTOS_ACTIVOS_EN_SIA
    FROM rsc_proced
   WHERE PRO_RESPON IS NOT NULL --SERVICIO RESPONSABLE
     AND PRO_CODI IN (SELECT PRO_CODI FROM RSC_PRONOR) -- TIENE NORMATIVAS
     AND PRO_CODI IN (SELECT PRO_CODI FROM RSC_PROMAT) -- TIENE MATERIAS
     AND PRO_VALIDA = 1 -- ES PUBLICA
     AND (PRO_FECCAD IS NULL OR (PRO_FECCAD IS NOT NULL AND PRO_FECCAD >= SYSDATE)) -- NO CADUCA
     AND (PRO_FECPUB IS NULL OR (PRO_FECPUB IS NOT NULL AND PRO_FECPUB <= SYSDATE)) -- NO CADUCA
    ;
SELECT ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_RESPON IS NULL 
        ) AS SIN_SERVICIO_RESPONSABLE,
        ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_CODI NOT IN (SELECT PRO_CODI FROM RSC_PRONOR) -- NO TIENE NORMATIVAS
        ) AS SIN_NORMATIVAS,
        ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_CODI NOT IN (SELECT PRO_CODI FROM RSC_PROMAT)
        ) AS SIN_MATERIAS,
        ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_VALIDA ! = 1
        ) AS NO_PUBLICOS,
         ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_FECCAD IS NOT NULL AND PRO_FECCAD < SYSDATE
        ) AS CADUCADOS,
         ( SELECT COUNT(*) 
           FROM rsc_proced
          WHERE PRO_FECPUB IS NOT NULL AND PRO_FECPUB > SYSDATE
        ) AS PUBLICACION_FUTURA
        FROM DUAL;

En resumen, un procedimiento está activo en SIA siempre que esté público (el campo valida vale 1, no está caducado y está publicado), tenga servicio responsable, tiene materias y tiene normativas.

sgelabert-dgtic commented 7 years ago

Adjunt resultats consulta entorn de PRE:

SIN_SERVICIO_RESPONSABLE SIN_NORMATIVAS SIN_MATERIAS NO_PUBLICOS CADUCADOS PUBLICACION_FUTURA
1421 0 0 847 175 0
slromero-indra commented 7 years ago

Después de estar investigando y haciendo pruebas parece ser que el error del procedimiento creado desde cero en Rolsac (día 14/03/2017) puede ser por un timeout de la transacción cuando el webservice tarda demasiado. Hemos reestructurado el proceso para evitar este tipo de problemas (estamos terminando de hacer pruebas y mañana lo subimos, también hemos mejorado la info que saca en el proceso). Respecto al resto de datos hay que asegurarse de que los datos estén alineados con el entorno de PRE, por lo que habría que replicar la actualización de datos en PRE a partir de la carga manual del excel en PRE o bien pedir a SIA que borre todos los datos de su PRE y los actualizamos de forma automática.

sgelabert-dgtic commented 7 years ago

Resultats proves després del darrers canvis commitats i l'actualització del ID_SIA sobre l'entorn de PRE:

slromero-indra commented 7 years ago

Buenas, revisamos los problema del bolcat complet y vemos de añadir el campo fecha de actualización sia.

Respecto al cambio de visibilidad de una UA, en la sql de extracción no nos pareció ver ninguna comprobación en la visualización de la UA del órgano resolutori. ¿Que comprobación debemos realizar? Es decir, sólo con comprobar la visibilidad de la UA del órgano resolutorio es suficiente o hace falta mirar si algún predecesor es no visible?

slromero-indra commented 7 years ago

Buenas, podéis ejecutarnos la siguiente SQL? Es para revisar el estado de las traducciones de los procedimientos que están dando los problemas en el volcat complet. Se ha detectado que los problemas son:

Si el título o la descripción son nulos o vacíos en español, se coge directamente la traducción en catalán (aún así, necesito ver que puedo regirme bajo esta regla según la sql).

 select * 
    from rsc_trapro
    where tpr_codpro  IN (96401, 98209, 106992, 123640, 328561, 851675, 2400319, 2579091, 2675271);
sgelabert-dgtic commented 7 years ago

Respecte a la comprovació de la visibilitat de la UA, cit aquí pàg. 3 del document d'estimació de la tasca:

Para que un procedimiento esté activo en SIA deberá cumplir los siguientes requisitos: · Ser público. · Estar publicado o sin fecha de publicación. · Estar no caducado o sin fecha de caducidad. · Que pertenezca a una unidad administrativa que sea pública (la asociada al procedimiento y ancestros)

Respecte a la query, aquí teniu els resultats query-bolcat.xlsx

rsanz-indra commented 7 years ago

Respecto a los errores que daban previamente a la alineación de datos que se ha hecho entre el entorno de PRE de Rolsac y SIA, parece ser que después de la alineación de datos ya se apunta al código SIA que toca y permite modificarlo correctamente. Entendemos que en los datos anteriores a la “alineación” se crearon procedimientos en SIA incorrectos, que tras arreglar en Rolsac la petición para incluir correctamente el organismo responsable daba error al modificarse. Parece que si se le pasa diferente organismo responsable con un mismo código origen, te permite crear un procedimiento en SIA (cosa que parece lógica).

sgelabert-dgtic commented 7 years ago

Errada al intentar fer un bolcat complet d'informació dins SIA. Adjunt captura de pantalla i informació de l'error: image

---- Error no controlado. ---- Mensaje:java.lang.NullPointerException at org.ibit.rol.sac.persistence.util.SiaUtils.obtenerCodigoIdCentro(SiaUtils.java:396) at org.ibit.rol.sac.persistence.util.SiaUtils.validaProcedimientoSIA(SiaUtils.java:308) at org.ibit.rol.sac.persistence.util.SiaUtils.isEnviableSia(SiaUtils.java:268) at org.ibit.rol.sac.persistence.ejb.SiaPendienteFacadeEJB.enviarTodos(SiaPendienteFacadeEJB.java:102) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:698) at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:198) at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:87) at org.jboss.ejb.plugins.AbstractInterceptor.invoke(AbstractInterceptor.java:109) at org.jboss.ejb.plugins.MetricsInterceptor.invoke(MetricsInterceptor.java:142) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:101) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:313) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:179) at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:120) at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:206) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:136) at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:345) at org.jboss.ejb.Container.invoke(Container.java:723) at sun.reflect.GeneratedMethodAccessor82.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:74) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:76) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:68) at org.jboss.mx.server.Invocation.invoke(Invocation.java:96) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:213) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:484) at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:111) at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:193) at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:179) at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:61) at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:70) at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:115) at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:100) at com.sun.proxy.$Proxy281.enviarTodos(Unknown Source) at org.ibit.rol.sac.persistence.delegate.SiaDelegateImpl.enviarTodos(SiaDelegateImpl.java:44) at org.ibit.rol.sac.persistence.delegate.SiaDelegateImpl$$EnhancerByCGLIB$$371b1652.CGLIB$enviarTodos$0$1() at org.ibit.rol.sac.persistence.delegate.SiaDelegateImpl$$EnhancerByCGLIB$$371b1652$$FastClassByCGLIB$$8eb4554f.invoke() at net.sf.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:201) at org.ibit.rol.sac.persistence.util.DelegateLogInterceptor.intercept(DelegateLogInterceptor.java:91) at org.ibit.rol.sac.persistence.delegate.SiaDelegateImpl$$EnhancerByCGLIB$$371b1652.enviarTodos() at org.ibit.rol.sac.persistence.delegate.SiaDelegate.enviarTodos(SiaDelegate.java:25) at es.caib.rolsac.back2.util.SiaPendienteJob.execute(SiaPendienteJob.java:52) at org.quartz.core.JobRunShell.run(JobRunShell.java:216) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)

sgelabert-dgtic commented 7 years ago

Adjunt valor de les propietats del servidor de PROducció

<!-- Configuració SIA --->
es.caib.rolsac.sia.tipoActuacion=1
es.caib.rolsac.sia.tipologiaTramitacion=4
es.caib.rolsac.sia.administracion=2
es.caib.rolsac.sia.url=https://www.caib.es/seucaib/es/tramites/tramite/
es.caib.rolsac.sia.jobpendientes=0 0 10 * * ?
es.caib.rolsac.sia.usuario.envio=*******
es.caib.rolsac.sia.pass.envio=********
es.caib.rolsac.sia.url.envio=http://sia2.redsara.es/axis2/services/wsSIAActualizarActuaciones
es.caib.rolsac.sia.activarEnvio=S
es.caib.rolsac.sia.centro.level=3
es.caib.rolsac.sia.tiempo.reintento=10
es.caib.rolsac.sia.departamento=A04003003
slromero-indra commented 7 years ago

Parece que es un problema que sólo surge si no tiene órgan resolutori. Reviso y te confirmo. Saludos!

slromero-indra commented 7 years ago

Buenas, ya está subido el cambio, faltaba realizar una comprobación a null.

slromero-indra commented 7 years ago

Generamos el tag rolsac-1.5.1?

sgelabert-dgtic commented 7 years ago

Finalment hem passat a producció els darrers canvis i llançant el bolcat complet.

Se han enviado 626 datos de un total de 1553 procedimientos. De los cuales:
- 619 datos correctos
- 7 datos incorrectos
- 821 datos no enviables a SIA

Adjunt log del bolcat logBolcatComplet20170406.txt

Podriem mirar de revisar aquests 7 incorrectes abans de generar el tag 1.5.1?

sgelabert-dgtic commented 7 years ago

La tasca programada de bolcat automàtic també dóna errors: image Adjunt log logScheduledTaskBolcatSIA.txt

A més s'ha de pensar amb una solució per netejar la pantalla d'administració SIA:

sgelabert-dgtic commented 7 years ago

Un altra cosa, si un procediment bolcat a SIA en novembre s'ha eliminat posteriorment de ROLSAC, aquest es donarà de baixa a SIA? Convindria estirar d'auditoria per forçar l'actualització d'aquestes dades?